[問題] 關於聊天 Socket 伺服器 相互溝通的問題

作者: herbacin (herbacin)   2016-12-13 16:14:35
各位大大, 小弟目前在開發聊天伺服器, 負載均衡部分 :
Web socket可透過nginx反向代理來進行負載均衡
Tcp socket可透過haproxy來進行負載均衡
想請問假設目前有A B C三台socket server, 負責聊天的功能
Client -> Loading balance -> A, B, C
A與B 或 B與C 或 A與C 彼此間不同的玩家要如何進行溝通呢?
是否還要建立一個 D socket server 當作中間的橋樑呢, 將A要傳送的訊息透過D在發送
到B呢?
A -> D -> B
還是說有更好的做法或一般常用的方法呢?
麻煩了解的大大可以提供一下建議 謝謝喔
作者: yoshilin (明明可以靠臉吃飯)   2016-12-13 18:39:00
有沒有可能是 A->mongoDB B->mongoDBmongoDB->D->A,B,Cdocuments裡面可以有個field紀錄聊天室的成員或是不用D,ABC自己去掃mongoDB裡的該使用者的訊息來送
作者: arthur104 (arthur)   2016-12-13 23:59:00
http://socket.io/docs/using-multiple-nodes/不確定 Java 有沒有對應的方式
作者: twntwn   2016-12-14 10:36:00
p2p 還是 group chat room?
作者: herbacin (herbacin)   2016-12-14 12:02:00
非p2p
作者: swpoker (swpoker)   2016-12-14 17:32:00
有一樓說的資料庫嗎?沒有DB的話,弄個JMS之類的,ABC<->JMS,

Links booklink

Contact Us: admin [ a t ] ucptt.com