首页  >  文章  >  php框架  >  workerman的集群怎么开发

workerman的集群怎么开发

(*-*)浩
(*-*)浩原创
2019-12-12 10:20:103457浏览

GatewayWorker基于Workerman开发的一个项目框架,用于快速开发TCP长连接应用,例如app推送服务端、即时IM服务端、游戏服务端、物联网、智能家居等等

workerman的集群怎么开发

Workerman可以看做是一个纯粹的socket类库,可以开发几乎所有的网络应用,不管是TCP的还是UDP的,长连接的还是短连接的。Workerman代码精简,功能强大,使用灵活,能够快速开发出各种网络应用。                         (推荐学习: workerman教程

同时Workerman相比GatewayWorker也更底层,需要开发者有一定的多进程编程经验。

提示

GatewayWorker提供的所有接口都是支持分布式调用的,所以业务代码不需要任何更改,直接就可以分布式部署。

如何分布式GatewayWorker

GatewayWorker通过Register服务来建立划分集群。同一集群使用相同的Register服务ip和端口,即Gateway 和 businessWorker的注册服务地址($gateway->registerAddress $businessworker->registerAddress)指向同一台Register服务。

分布式部署的关键步骤

1、一个集群只需要一台服务器作为Register服务,用于进程启动时协调Gateway与BusinessWorker之间的建立连接通讯,其它服务器可以删掉start_register.php文件或者注释掉里面的代码。

(Register服务本身通讯量极低,一般仅在进程启动时通讯,所以Register服务本身不会成为瓶颈,运行过程中即使Register服务服务器暂时挂掉,也不会对外网服务造成影响,所以Register服务一般不需要做高可用)

2、将Gateway 和 businessWorker的注册服务地址(registerAddress)设置成统一的Register服务地址,也就是步骤1选择的Register服务所在服务器的ip和端口。

3、设置Gateway启动脚本(一般是start_gateway.php)中的lanIp与当前服务器内网ip一致

以上是workerman的集群怎么开发的详细内容。更多信息请关注PHP中文网其他相关文章!

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