数据库端口
- MySQL: 3306 这是 MySQL 数据库服务器的默认端口。MySQL 是最流行的开源关系型数据库之一,广泛用于各种 Java 应用。连接字符串通常形如
jdbc:mysql://hostname:3306/database。 - PostgreSQL: 5432 PostgreSQL 是一个功能强大的开源对象关系数据库系统,以其可靠性和数据完整性著称。Java 应用通过 JDBC 使用
jdbc:postgresql://hostname:5432/database连接。 - Oracle: 1521 Oracle 数据库是企业级应用常用的商业数据库,端口 1521 用于 Oracle Net Listener。Java 应用通常使用
jdbc:oracle:thin:@hostname:1521:SID或jdbc:oracle:thin:@hostname:1521/SERVICE连接。 - SQL Server: 1433 Microsoft SQL Server 的默认 TCP 端口,Java 应用通过 JDBC 使用
jdbc:sqlserver://hostname:1433;databaseName=database连接。 - MongoDB: 27017 MongoDB 是流行的 NoSQL 文档数据库,Java 应用通过 MongoDB Java Driver 连接,连接 URI 为
mongodb://hostname:27017/database。 - Redis: 6379 Redis 是高性能的键值存储数据库,常用于缓存和消息代理。Java 应用通过 Jedis, Lettuce 或 Redisson 等客户端库连接。
- Elasticsearch: 9200 (HTTP), 9300 (TCP传输) Elasticsearch 是分布式搜索和分析引擎,9200 端口用于 REST API 访问,9300 端口用于节点间通信。Java 应用可以通过 REST 客户端或传输客户端连接。
- Cassandra: 9042 Apache Cassandra 是一个高度可扩展的分布式 NoSQL 数据库,Java 应用通过 DataStax Java Driver 连接这个端口。
Web 服务器端口
- Tomcat: 8080 Apache Tomcat 是最流行的 Java Servlet 容器之一,默认在 8080 端口提供 HTTP 服务。它轻量级且易于配置,常用于部署 Java Web 应用和 Spring Boot 应用。
- Jetty: 8080 Eclipse Jetty 是一个轻量级的 Java Web 服务器和 Servlet 容器,与 Tomcat 类似,默认使用 8080 端口,但更注重可嵌入性和性能。
- WildFly/JBoss: 8080, 9990 (管理控制台) WildFly(前身为 JBoss AS)是一个功能完备的 Java EE 应用服务器,8080 用于应用访问,9990 用于管理控制台。
- WebLogic: 7001, 7002 Oracle WebLogic Server 是企业级 Java EE 应用服务器,7001 是管理服务器端口,7002 通常是安全管理端口(SSL)。
- WebSphere: 9060, 9080 IBM WebSphere Application Server 是企业级应用服务器,9060 用于管理控制台,9080 用于 HTTP 请求。
- Spring Boot: 8080 (默认) Spring Boot 嵌入式服务器(通常是 Tomcat)的默认端口,可在 application.properties 中通过
server.port属性轻松配置。 - HTTP: 80 标准 HTTP 协议端口,生产环境的 Web 应用通常配置在此端口,通常需要反向代理如 Nginx 或 Apache HTTPD。
- HTTPS: 443 安全 HTTP 协议(SSL/TLS)的标准端口,用于加密通信,生产环境的安全 Web 通信必备。
消息队列/中间件
- RabbitMQ: 5672 (AMQP), 15672 (管理界面) RabbitMQ 是流行的消息代理,实现 AMQP 协议。5672 用于 AMQP 连接,15672 提供 Web 管理界面。Java 应用通过 Spring AMQP 或 RabbitMQ Java 客户端连接。
- Kafka: 9092 Apache Kafka 是高吞吐量的分布式流处理平台,9092 是 Broker 默认端口。Java 应用通过 Kafka Java 客户端或 Spring Kafka 连接。
- ActiveMQ: 61616 (JMS), 8161 (Web控制台) Apache ActiveMQ 是流行的 JMS 实现,61616 用于 JMS 连接,8161 用于 Web 管理控制台。
- ZooKeeper: 2181 Apache ZooKeeper 提供分布式配置服务、同步服务和命名注册,在 Kafka、HBase 等分布式系统中广泛使用。
- Dubbo: 20880 Apache Dubbo 是阿里巴巴开源的 RPC 框架,默认使用 20880 端口进行服务暴露和调用。
- RocketMQ: 9876 (Namesrv), 10911 (Broker) Apache RocketMQ 是阿里巴巴开源的分布式消息系统,9876 是名称服务器端口,10911 是 Broker 默认端口。
监控和开发工具
- Jenkins: 8080 Jenkins 是流行的持续集成/持续部署(CI/CD)工具,默认在 8080 端口提供 Web 界面。
- Prometheus: 9090 Prometheus 是监控和告警工具,默认在 9090 端口提供 Web 界面和 API,用于收集和查询指标数据。
- Grafana: 3000 Grafana 是可视化和分析监控数据的工具,常与 Prometheus 配合使用,在 3000 端口提供 Web 界面。
- SonarQube: 9000 SonarQube 是代码质量管理平台,在 9000 端口提供 Web 界面,用于静态代码分析。
- JMX: 1099 Java Management Extensions 默认端口,用于远程监控和管理 Java 应用。
- Java Debug Wire Protocol (JDWP): 5005 Java 调试协议的默认端口,IDE 通过此端口连接到远程 JVM 进行调试。
其他常用服务
- SSH: 22 Secure Shell 协议端口,用于安全远程登录和文件传输,Java 开发人员常用此端口连接远程服务器。
- FTP: 21 文件传输协议默认端口,用于文件上传下载,Java 应用可通过 Apache Commons Net 等库使用。
- SFTP: 22 SSH 文件传输协议使用 SSH 连接(端口 22)进行安全文件传输,是 FTP 的安全替代。
- SMTP: 25, 587 (TLS) 简单邮件传输协议端口,Java 应用通过 JavaMail API 发送邮件,587 是启用 TLS 的端口。
- LDAP: 389 轻量级目录访问协议端口,用于访问和维护分布式目录信息服务,如用户认证。
- LDAPS: 636 LDAP 的安全版本,使用 SSL/TLS 加密通信。
- Git: 9418 Git 协议的默认端口,用于 Git 仓库访问,不过现在大多数 Git 操作通过 SSH(22)或 HTTPS(443)进行。
- Nexus Repository: 8081 Sonatype Nexus Repository Manager 的默认端口,用于管理 Maven、npm、Docker 等构件仓库。
- Nacos: 8848 阿里巴巴开源的动态服务发现、配置管理和服务管理平台,默认 Web 端口。
- Eureka: 8761 Netflix Eureka 服务注册与发现组件的默认端口,在 Spring Cloud 微服务架构中广泛使用。
在实际开发和部署环境中,这些默认端口常常被修改以避免端口冲突、增强安全性或适应特定网络架构。了解这些端口及其服务的作用,有助于开发者进行系统配置、网络架构设计、防火墙策略制定和问题诊断。