首页/网络/常用端口速查/4730 Gearman 任务分发队列

4730 Gearman 任务分发队列

Gearman job server 默认 4730:经典任务分发中间件,PHP/Python 老系统常用来异步派活,无认证。

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

4730 是什么

4730 是 Gearman job server 的默认端口。Gearman 提供一层任务分发中间件:客户端提交「功能名加参数」,服务端把任务派发给注册了该功能的 worker,支持同步与异步、优先级与后台任务。它的协议简单、接入成本低,因此老一代 PHP 与 Python 系统常用它做邮件发送、图片处理这类异步作业。Gearman 本身没有认证机制,安全性完全依赖网络隔离与调用方的可信程度。

基本信息

服务Gearman job server
协议TCP(文本协议)
用途任务分发与异步作业队列
认证无,依赖网络隔离
替代方案RabbitMQ、Kafka、Redis 队列
常见调用方PHP、Python 老系统

典型使用场景

  • 异步任务排障:确认 job server 在线、worker 是否已注册
  • 队列治理:查看积压的功能名与在线 worker 数量
  • 安全核查:确认 4730 只在内网可达
  • 技术栈迁移:评估替换为主流消息中间件的工作量
  • 容量评估:并发任务数与 worker 数量的匹配关系
  • 变更验证:调整 worker 数量或优先级后的效果核对

Gearman 常见诊断命令

命令作用关注点
status列出功能名、排队数、worker 数排队不为零说明消费者不足
workers列出在线 workerworker 掉线是任务卡住的首因
version服务端版本版本过老需评估升级
priority优先级相关命令用于调整任务处理顺序

探测与诊断

探测与诊断
nc -zv queue01 4730                        # 连通性
(echo status; sleep 1) | nc queue01 4730    # 查看队列与 worker
ss -lntp | grep 4730                        # 监听核对
# 监控建议: 对 status 输出做排队数告警
# 失败任务: 注意 worker 返回异常时任务不会自动重试
Gearman 的 worker 注册即执行:任何能连到 4730 的程序都能声明自己是某个功能的 worker,从而接收并执行任务负载,因此端口暴露等价于代码执行入口。
任务语义由客户端与 worker 自行约定:升级或替换中间件时,先把功能名与参数格式盘点清楚,避免出现「没人消费」的静默积压。
Gearman 不做任务持久化:job server 重启时排队中的任务会丢失,业务侧若要保证不丢,需要在提交前落地记录或换用持久化队列。
同一个功能名可以由多个 worker 共同消费,用于横向扩容:但消费顺序无法保证,有严格顺序要求的任务不能这样拆分。

易错点

  • 把 Gearman 当可信内网件:worker 注册即可接管任务执行
  • 只监控进程不监控队列:积压数增长时才被发现,业务延迟已经发生
  • 迁移队列中间件不盘功能名清单:新旧系统并行期出现任务被两边抢走
  • 依赖 Gearman 做可靠投递:服务重启丢任务,业务数据出现缺口
  • 所有任务共用一个功能名:无法区分优先级,重要任务被批量作业堵在后面

数据来源与参考

  • Gearman 官方文档(默认 4730)

相关工具

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