一个Gateway下挂载多个Worker项目,怎么配置?

mack1992

想法是,在Application目录下创建多个项目,其中一个项目(A)用于开启Gateway进程,保存客户端连接数据。用户都连接到(A)这个项目上,发消息的时候用协议号,通过(A)向其他的项目发送数据,其他项目返回数据给(A),(A)再返回给用户。
请教如何配置(A)与其他项目的配置文件?
(A)只想部署Gateway进程,其他项目只想部署Worker进程
所有项目都是基于Gateway/Worker的框架。

3486 1 0
1个回答

walkor

可以看下http://www.workerman.net/gatewaydoc/gateway-worker-development/router.html,路由(一个回调函数)可以根据请求类型把请求分发到不同的worker进程。完成你要的效果。路由的时候每个worker连接都有个数组下标,数组下标个是 ip:{$worker->name}:{$worker->id},可以根据worker->name判断是哪种worker进程。

可以参考start_businessworker.php那样新建start_businessworker_chat.php、start_businessworker_gift.php(要设置好businessworker->name,方便路由的时候识别),服务启动的时候这些worker会自动启动。

年代过于久远,无法发表回答
🔝