Workerman 4.0.20 GatewayWorker 集群

云婷姑娘_5730

云婷姑娘_5730

2026-08-10

185人浏览

原创

必须部署至少两个register实例实现容灾,gateway节点需配置registeraddress为数组形式指向所有register地址,并设置lanip及开放startport至startport+count-1端口供内网通信。

workerman 4.0.20 gatewayworker 集群

要在生产环境稳定运行高并发WebSocket服务,必须将Workerman 4.0.20版本的GatewayWorker部署为跨服务器集群,避免单点故障并支撑横向扩容。

准备Register服务集群

Register是GatewayWorker集群的注册中心,必须先部署至少两个独立实例才能形成基础容灾能力。

在第一台服务器(192.168.5.10)上,编辑start_register.php,将监听地址改为内网IP:
$register = new Register('text://192.168.5.10:1236');

在第二台服务器(192.168.5.11)上,同样修改start_register.php
$register = new Register('text://192.168.5.11:1236');

【Register端口1236必须仅对内网开放,严禁绑定0.0.0.0或暴露到公网】。若使用云服务器,需同步配置安全组放行该端口仅限内网IP互访。

配置Gateway节点注册地址

所有Gateway节点必须指向同一组Register服务地址,格式为数组。打开每台服务器上的start_gateway.php,定位到$gateway->registerAddress赋值行。

将其统一修改为:
$gateway->registerAddress = ['192.168.5.10:1236', '192.168.5.11:1236'];

这一步不可省略——即使只启动一个Register,也必须写成数组形式,否则Workerman 4.0.20会因类型校验失败而拒绝启动。

gstack Investigate
gstack Investigate

通过四阶段调试流程,为缺陷或错误提供系统性的根本原因分析和经验证的修复方案,不依赖猜测或过早修复。

下载

设置Gateway本机内网IP与端口范围

Gateway进程需向Register上报自身真实内网地址,否则其他节点无法建立内部通信链路。

第一步:确认当前服务器的内网IP(如192.168.5.10),执行ip a | grep "inet " | grep -v "127.0.0.1"验证。

第二步:在start_gateway.php中设置$gateway->lanIp为该IP:
$gateway->lanIp = '192.168.5.10';

第三步:检查$gateway->startPort$gateway->count。例如设为startPort=2900; count=4,则2900~2903共4个端口必须全部开放给内网其他服务器访问——这些是Gateway间心跳与数据转发所用的私有通道。

启动与验证流程

① 先在两台Register服务器上分别执行:
php start_register.php start -d

② 等待10秒后,在Gateway服务器上依次执行:
php start_gateway.php start -dphp start_businessworker.php start -d

③ 登录任意一台Gateway服务器,运行:
php start_gateway.php status → 查看输出中register状态是否为connected

④ 在另一台Gateway服务器上执行相同命令,确认其也显示connected且指向相同的Register地址列表。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
Workerman安装配置教程
Workerman安装配置教程

Workerman安装配置教程专题提供Workerman安装配置、WebSocket开发、TCP通信、异步编程、高并发服务搭建与PHP实时通信开发教程。

2026.05.20

126

15

Workerman实时通信与长连接开发教程
Workerman实时通信与长连接开发教程

WWorkerman实时通信与长连接开发教程聚合实时通信、聊天室、长连接、消息推送、AI流式输出等Workerman高并发开发内容。

2026.05.20

162

12

Workerman异步通信与TCP服务器开发
Workerman异步通信与TCP服务器开发

Workerman异步通信与TCP服务器开发专题整理Workerman异步通信、TCP服务、HTTP服务、WebSocket开发与高并发PHP服务器教程。

2026.05.20

127

13

AI视频生成软件推荐
AI视频生成软件推荐

本专题汇总了当前主流的AI视频生成软件推荐与排行榜单,涵盖seko、AniShort、剧云、Lovart、LiblibAI及立刻mv等热门工具。同时整理了各软件在文生视频、图生视频、时长限制、画质表现及免费额度等方面的差异对比,助您快速选对适合创作需求的AI视频生成工具。

2026.09.16

160

9

ai生成视频的工具免费版合集
ai生成视频的工具免费版合集

本专题汇总了当前免费AI生成视频工具的排行榜与推荐清单,涵盖seko、讯飞智作、AniShort及剧云、Lovart等多模型集成平台。同时整理了各工具的免费额度、输出时长、水印政策及适用场景差异,助您快速选择合适工具开启AI视频创作。

2026.09.16

60

10

Pandas时间序列分析与可视化报表
Pandas时间序列分析与可视化报表

本专题整理Pandas日期转换、时间索引、重采样、滚动窗口、时区处理、plot绘图、Styler表格样式和报表输出方法。

2026.09.16

60

23

Pandas数据筛选索引与清洗处理
Pandas数据筛选索引与清洗处理

本专题整理Pandas中的loc、iloc、条件筛选、query查询、缺失值处理、重复值删除、类型转换和字符串列清洗方法。

2026.09.16

40

25

Pandas数据读取导入与文件导出处理
Pandas数据读取导入与文件导出处理

本专题整理Pandas读取CSV、Excel、JSON、SQL、Parquet等文件的方法,以及to_csv、to_excel、to_sql和to_parquet等常用数据导出流程。

2026.09.16

40

27

GDB怎么设置断点
GDB怎么设置断点

本专题介绍GDB按照函数名、源代码行号和文件位置设置断点的方法,详细说明run、continue、next、step等命令的配合使用,帮助定位程序崩溃、逻辑异常及代码未按预期执行的问题。

2026.09.11

360

28

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Webman中文手册
Webman中文手册

共0课时 | 0人学习

Workerman官方手册
Workerman官方手册

共0课时 | 0人学习

ThinkPHP5.1完全开发手册
ThinkPHP5.1完全开发手册

共0课时 | 0人学习