如何在ejabberd集群中处理故障转移?

4
背景:
我有一个系统需要支持分布在100个聊天室中的20,000个连接用户。在性能测试期间,我发现在单台服务器上可以连接高达6,000个用户,然后就会出现崩溃转储。因此,在生产环境中,我可能会使用集群中的四台服务器。

我的问题:
我知道聊天室绑定在服务器节点上,所以如果该节点崩溃,聊天室也会消失,用户也不再属于该聊天室。是否有办法将聊天室“复制”到另一个节点,以便留下的用户被移动到复制的房间中?如果没有,那么您是如何保持用户的连续性的?

1个回答

0
你使用的是什么硬件?6000个连接用户似乎有点少。此外,ejabberd在负载下不应该崩溃。它可能会变慢,但不会崩溃。
你的设置有问题。
关于复制聊天室节点,这并不容易。最好在客户端处理平稳的重新连接。
但再说一遍,除非出了问题,否则ejabberd不应该在这种负载下崩溃。

感谢您的建议 - 我现阶段不太担心数字。我更关注的是其他人从失去聊天室中恢复的方法。 - user141682

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接