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里具体的某连接,然后直接发送消息就好了
以上就是swoole如何管理集群的详细内容,更多请关注Work网其它相关文章!