1.GatewayWorker 简介
GatewayWorker是基于Workerman开发的一个TCP长连接框架,实现了单发、群送、广播等长连接必用的接口。GatewayWorker框架实现了Gateway Worker进程模型,天然支持分布式多服务器部署,扩容缩容非常方便,能够应对海量并发连接。可以说GatewayWorker是基于Workerman实现的一个更完善的专门用于实现TCP长连接的项目框架。
2.GatewayWorker下载地址:
https://www.workerman.net/download 注:
GatewayWorker分为windows版本和linux版本 两者的启动方式和依赖的包不同
3.GatewayWorker基本设置
a)修改Applications\YourApp\start_gateway.php(修改协议方式和端口号)如:
// gateway 进程,这里使用Text协议,可以用telnet测试
$gateway = new Gateway("Websocket://0.0.0.0:8282");
如果需要心跳检测还需要设置以下内容
// 心跳间隔
$gateway->pingInterval = 10;
// 心跳数据
$gateway->pingData = '{"type":"ping"}';
其中pingInterval为发送心跳的间隔 一般设置为30s左右,pingData 是心跳发送的内容
4.其他业务逻辑基本使用Applications\YourApp\Events.php文件
其中方法解释
onConnect 当客户端连接时触发
onMessage 当客户端发来消息时触发
onClose 当用户断开连接时触发
具体请参考 http://doc2.workerman.net/lib-gateway-functions.html