国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

多個GATEWAY進程的客戶端的連接信息在哪維護

ayamzh

多個GATEWAY進程的客戶端的連接信息在哪維護,如何廣播所有GATEWAY進程上連接的客戶端

4558 4 0
4個回答

walkor 打賞

每個Gateway進程會維護自己的客戶端鏈接,并且都會有自己的內部通訊內網(wǎng)ip及端口(各個Gateway進程內部通訊ip端口都不一樣,使得BussnessWorker可以識別特定的Gateway進程并與之通訊),workerman會將所有Gateway進程的內部通訊的ip端口記錄在一個存儲里面(可能是文件或者memcache,取決與Config/Store::$driver,注意采用文件存儲時無法使用分布式),BussnessWorker進程啟動的時候會讀取存儲中與Gateway通訊的ip端口并與之建立TCP長鏈接,并保存這些鏈接在數(shù)組中。當BussnessWorker要向所有客戶端鏈接廣播數(shù)據(jù)時,只需要向這些長鏈接各發(fā)送一個cmd為CMD_SEND_TO_ALL的數(shù)據(jù)包即可,每個Gateway進程收到數(shù)據(jù)包發(fā)現(xiàn)是CMD_SEND_TO_ALL后便向自己維護的客戶端鏈接發(fā)送需要廣播的數(shù)據(jù)即可。這樣每個鏈接到Gateway上的客戶端都會收到廣播的數(shù)據(jù)了。

  • 暫無評論
ayamzh

那如果我想通過BUSSNESS 向指定的一個或者多個UID做通知,框架支持么

  • 暫無評論
DY

逐一針對UID進行發(fā)送信息就可以了

  • 暫無評論
walkor 打賞

ayamzh
那如果我想通過BUSSNESS 向指定的一個或者多個UID做通知,框架支持么

可以的,有現(xiàn)成的接口,Gateway::sendToUid

  • 暫無評論
年代過于久遠,無法發(fā)表回答
??