第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

swoole websocket server集群怎么做?

swoole websocket server集群怎么做?

PHP
慕哥9229398 2019-03-06 13:10:19
1,swoole websocket集群如何做到自動輪換,保證可靠性2,swoole websocket server集群中,如何讓 server1 的client A 向 server2 的 client B 推送 信息?
查看完整描述

7 回答

?
絕地?zé)o雙

TA貢獻1946條經(jīng)驗 獲得超4個贊

首先,感謝各位技術(shù)專家提供的答案和思路,?。

實際中我發(fā)現(xiàn)原生Swoole對Cluster并不支持,然后研究了蠻久的SwooleDistributed,但是它需要配合Consul,這個配置也是及其麻煩的,最終都放棄了,選擇了原生支持Cluster的Workman,支持異步MySQL,異步Redis,暫時項目就是用這個,后期也會繼續(xù)跟進Swoole對Cluster的支持。

感謝各位!

查看完整回答
反對 回復(fù) 2019-03-18
  • xlu
    xlu
    基于workerman的GatewayWork動態(tài)集群方案值得借鑒,如果基于swoole來個GatewaySwoole就666了
  • xlu
    xlu
    ClientA的長鏈接在server1上,clientB的長鏈接在server2上"的,ClientA要發(fā)送給clientB消息,只需要知道serverB的host 以及clientB在serverB上的connetion_id就行,沒必要hash,一般server會把每個client包裝成一個connetion存儲起來
  • xlu
    xlu
    ClientA的長鏈接在server1上,clientB的長鏈接在server2上"的,ClientA要發(fā)送給clientB消息,只需要知道serverB的host 以及clientB在serverB上的connetion_id就行,沒必要hash,一般server會把每個client包裝成一個connetion存儲起來
?
哈士奇WWW

TA貢獻1799條經(jīng)驗 獲得超6個贊

謝邀 .
首先說下我自己是沒有搞過ws集群的 , 不過有興趣回答一下 .
一般說來 , 無論是tcp還是ws(當(dāng)然ws本質(zhì)上就是tcp)將信息主動push出去 , 靠的是fd文件描述符 . server1的clientA應(yīng)該是在server1上有自己的文件描述符 , server2的clientB在server2上也有自己的文件描述符 . 這個你應(yīng)該是明白的 .

我認(rèn)為你是可以通過某種方案來確定"ClientA的長鏈接在server1上,clientB的長鏈接在server2上"的 , 比如你可以通過hash或者uid取余這種方式來確定某個用戶將會與某個服務(wù)器建立長鏈接 . 只要這點確定了 , 你就可以將"發(fā)送給clientB的消息"也通過這個方式來落到clientB建立長鏈接的服務(wù)器上 , 然后這會兒你就可以很自然的通過這臺服務(wù)器利用fd將消息push給clientB了.

應(yīng)該會有更好的解決方案 . 關(guān)注.

查看完整回答
反對 回復(fù) 2019-03-18
?
慕村225694

TA貢獻1880條經(jīng)驗 獲得超4個贊

uid+serverip+fd是否可以實現(xiàn)?

查看完整回答
反對 回復(fù) 2019-03-18
?
慕娘9325324

TA貢獻1783條經(jīng)驗 獲得超4個贊

clientA --> server1 | send msg to clientB
            server1 | Find clientB at server2 (hash / radis / broadcast)
            server1 | connect server2 as websocket client
server1 --> server2 | msg to clientB from clientA
server2 --> clientB | receive msg from clientA
同服務(wù)器消息 和 不同服務(wù)器消息 結(jié)構(gòu)上應(yīng)該是不同的
類似魔獸跨服務(wù)器消息
[from A:to B:msg] A(server1) => B(server1)
[from A@1:to B@2:msg] A(server1) => B(server2)
查看完整回答
反對 回復(fù) 2019-03-18
  • 7 回答
  • 0 關(guān)注
  • 999 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號