>[info] whisper v2 采用的依旧是 gatewayworker 框架,但是不同的是,采用的是 thinkphp 5.1 自带的 think-worker 的包。 配置 gatewayworker ,位于 config/gateway_worker.php ``` return [ // 扩展自身需要的配置 'protocol' => 'websocket', // 协议 支持 tcp udp unix http websocket text 'host' => '0.0.0.0', // 监听地址 'port' => 8282, // 监听端口 'socket' => '', // 完整监听地址 'context' => [], // socket 上下文选项 'register_deploy' => true, // 是否需要部署register 'businessWorker_deploy' => true, // 是否需要部署businessWorker 'gateway_deploy' => true, // 是否需要部署gateway // Register配置 'registerAddress' => '127.0.0.1:1236', // Gateway配置 'name' => 'Whisper', 'count' => 4, 'lanIp' => '127.0.0.1', 'startPort' => 2000, 'daemonize' => false, 'pingInterval' => 30, 'pingNotResponseLimit' => 1, 'pingData' => '', // BusinsessWorker配置 'businessWorker' => [ 'name' => 'WsWorker', 'count' => 8, 'eventHandler' => 'app\websocket\Events', ] ]; ``` 需要关注的配置 | 参数 | 解释 | | --- | --- | | port | 8282,如果没有端口冲突的话,此处不需要更改。如若更改,也要修改config/whisper.php 下的 socket 的 连接端口 | | count | 此处建议填写 cpu 的核数,gateway 的数量。参数调优查看 gatewayworker的手册| | businessWorker --> count | 此处建议填写 cpu 核数的 2-4 倍。参数调优查看 gatewayworker的手册 | 进入 whisper-v2 的根目录,执行如下命令: >[info] php think worker:gateway > 就可以debug运行了。 各种命令的解释: | 解释 | 命令 | | --- | --- | | debug启动 | php think worker:gateway | | 守护运行 | php think worker:gateway -d | | 停止 | php think worker:gateway stop | >[danger] 在最终运行系统之前,您别忘了如下的配置,8282 也就是您配置的 socket 端口,要在防火墙中打开,如果您是阿里云,同时也要打开 安全组。并完成 《如何使用》 章节下的各种配置。 ![](https://box.kancloud.cn/91ad03b3e8dd1b6d2ca84e121fdad833_1628x396.png)