socket.io聊天室,做服务器集群会有问题吗?
发布于 10 年前 作者 nike527 8295 次浏览 最后一次编辑是 8 年前 来自 问答

用express+socket.io做聊天室,用ngnix做负载均衡,后端有两台服务器,这样在广播消息的时候会有问题吗?

7 回复

两个问题要注意

  1. 配置 nginx 支持 websocket
  2. 注意 socket.io 会话保持方面的坑。

@alsotang ,谢谢指点,如果nginx配置了websocket,会不会有这样的问题,比如:聊天在做socket连接的时候有人命中了服务器1,有人 命中了服务器2,这样在发送聊天广播信息的时候会不会有人收不到消息呢,只给连接到当前的服务器的用户发送?

@nike527 你要想办法把消息共享这方面的逻辑移出 node 进程,放在一个共享的地方,比如接上 redis 之类的。

@alsotang ,好的,谢谢,有相关的资料吗?我参考参考。。

@nike527 搜索「一致性散列」

pomelo 天生就是分布式集群的

回到顶部