Rumah >rangka kerja php >Swoole >swoole如何管理集群

swoole如何管理集群

藏色散人
藏色散人asal
2020-04-10 09:56:223380semak imbas

swoole如何管理集群

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里具体的某连接,然后直接发送消息就好了

Atas ialah kandungan terperinci swoole如何管理集群. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:swoole如何关闭守护进程Artikel seterusnya:swoole如何监听redis数据