[问题] 关于聊天 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