首页 > PHP学习 > swoole如何管理集群

swoole如何管理集群

时间:2022年6月22日 分类:PHP学习 浏览量:260

swoole如何管理集群?

swoole websocket server集群怎么做?

问题:

1,swoole websocket集群如何做到自动轮换,保证可靠性

2,swoole websocket server集群中,如何让 server1 的client A 向 server2 的 client B 推送 信息?

回答:

首先你要了解问题的本质是你不在同一个进程空间里(当然在不同的服务器上),你无法直接通讯,因为无法共享tcp连接或无法直接操作相应的tcp连接

现假如你有个集群里面有同样服务的多机子(每天当成一个工作进程):A和B

现在你想A里的某连接(某客户)向B里的某连接(某客户)通讯的思路:

启动一台服务器M

在A和B的启动进程里,开启一个连接M的客户端(分别我们叫C1,C2),并监听事件

A里的某连接(某客户)发送消息A服务器,A服务器处理相关的B标识用户数据, 转交给C1,然后C1发送消息给M服务器

然后M服务器,发送消息给所有的连接的客户端(当然这里如果你做了相应的用户标识,识别到了C2, 直接发送消息给C2就可以了)

M发送消息给C2,然后C2根据标识查找到B里具体的某连接,然后直接发送消息就好了

觉得文章有用就打赏一下文章作者

微信扫一扫打赏

标签: