项目背景就是要做一个在线聊天系统,分布式的。最大的一个难点就是不同服务器的fd如何实现通信。
我也是刚接入这种项目不久,研究了一段时间后发现,如果不计维护成本,肯定是mq的发布订阅模式去做,但如果小公司,小团队,肯定 没有人力去维护一个mq这么重的消息中间件。
退而求其次,用redis的发布订阅貌似也可以,并且redis也比较容易部署。
除了这两种,还有什么比较好的方法吗?
比如(以下是我自己想的,没看到有人这样做过):
1、使用多台ws服务器交叉通信,fd1->fd2 fd2在server2上,那么就server1-连接上server2 把消息发给server2 ,再由server2发消息给fd2。
还有其它 方法吗?
参访一下workerman,完全可以满足你的分布式部署,通信。而且有在线demo 参考地址https://github.com/walkor/wor...