[已解决]websocket集群方案。求讨论交流。
发布于 4个月前 作者 lonso 811 次浏览 来自 问答

websocket通过ngxin做集群。 如果两台设备A,B,两台server,C,D。 如果A负责均衡到C, B负责均衡到D。 C,D两台server之间如何通信?

=============================================================

新问题来了,redis是单点,不能单点存在。 现在一个方案nginx方案, 求问nginx可以通过query string hash么 或者说 socket io 可以自定义 header么》?

============================================================= websocket 服务端之间的通信》》?

============================================================= 笔记一下: 由于考虑到用户量的问题,如果利用redis共享的话,目前也没有很好的redis集群方案,存储分片等运维也不好处理。 所以避免这个问题,考虑在每台服务器上有一个redis来存储。 前端通过nginx hash,把同一room需要通信的client,链接在同一个进程里。

14 回复

redis?反正不是内存

application servers 通过 database server(s) 进行信息交换。

感觉不太对啊

@alsotang redis共享可以。没试过,如果连在不同server都可以通信,那就能解决这个问题~~

@leapon 不能直接点对点?

@ringtail ws不知,如果xmpp服务服务之间是可以互动的。

@alsotang redis集群可用么?

不理解哦 只是server互相通信? 为啥不用rpc?

@chemdemo 是现在用ws做了,考虑集群方案的时候有这个问题。

可以使用redis的事件机制来同步和分发消息

@lonso 3.0之后 redis 官方支持集群特性了,不过没搭过

server间通信的话,可以用redis or zeromq

Nginx做Cookie分流

@RavenZZ 目前nginx,key的hash来处理。

回到顶部