首页/网络/常用端口速查/9999 自建服务常用口(xxl-job/Pgpool)

9999 自建服务常用口(xxl-job/Pgpool)

一个"谁都在用"的高号端口:xxl-job 执行器默认 9999,Pgpool-II 数据库中间件默认也是 9999,撞号排查先认进程。

常用端口速查网络更新于 2026-10-13

9999 是什么

9999 是一个没有唯一归属的高号端口:分布式任务调度平台 xxl-job 的执行器默认监听它,数据库中间件 Pgpool-II 的默认服务端口也是它。这类「谁都在用」的端口在排查上有个特点——看到端口号说明不了任何问题,必须先认进程,才能判断是哪套系统在占用。

基本信息

常见归属xxl-job 执行器 / Pgpool-II 连接池
端口/协议TCP,9999
xxl-job 日志常见路径 /data/applogs/xxl-job/
Pgpool 配置pgpool.conf 中的 port 参数
安全等级仅内网,不应对外开放

典型使用场景

  • 任务调度排障:执行器注册不上调度中心时先确认 9999 是否在监听
  • 数据库中间件巡检:确认 Pgpool-II 是否正常提供服务端口
  • 端口冲突排查:同一台主机部署多套系统时识别谁抢到了 9999
  • 容器化改造:容器端口映射后宿主机端口冲突引发的启动失败
  • 安全核查:确认 9999 只在内网可达,未暴露到公网

占用排查

占用排查
ss -lntp | grep 9999                     # 谁在监听 9999
sudo lsof -i :9999                       # 反查进程与可执行文件
ss -ntp | grep 9999                      # 看已建立连接与对端,判断是调度还是数据库流量
ps -ef | grep -E 'xxl-job|pgpool' | grep -v grep   # 按进程名核对归属
netstat -ano | findstr 9999              # Windows 侧对照

两类服务的区分方法

线索xxl-job 执行器Pgpool-II
进程名Java 进程,常带 xxl-job 相关参数pgpool 进程
对端地址调度中心地址数据库客户端与后端 PostgreSQL
日志位置/data/applogs/xxl-job/ 等应用日志目录Pgpool 日志与 /var/log 下相关文件
配置入口执行器配置或启动参数中的端口项pgpool.conf 的 port 参数
同一台机器上两套系统都用 9999 时,后启动的服务往往直接启动失败;如果启动脚本没有做端口占用检查,故障会表现为「任务偶发派单丢失」或「数据库连接偶发失败」,而不是明确的报错,排查成本很高。
上线前先在目标主机上确认端口占用情况,并把它写进部署清单;容器化环境还要区分容器内端口与宿主机映射端口,两者的冲突面并不相同。
台账里不要只登记「9999 开放」,而要写清是哪个业务、哪个组件、由谁负责。这个端口在真实环境里的归属高度分散,只有业务归属才是可核查的结论。

易错点

  • 同一主机两个 9999 服务先后上线:后启动的静默失败,业务表现为偶发派单丢失或连接失败
  • 把 9999 当作某一家产品的专属端口写进基线:基线与实际部署不符,评审失去依据
  • 内网排查只看到端口就下结论:未区分调度执行器与数据库中间件,处置方向容易跑偏
  • 容器端口映射与宿主机已占用端口冲突:容器反复重启,日志里只看到绑定失败

数据来源与参考

  • xxl-job 文档(执行器 9999);Pgpool-II 文档(默认 9999)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌