erlang - 关于如何处理 ejabberd 集群中的故障转移有什么建议吗?

标签 erlang failover ejabberd

上下文:
我的系统需要支持分布在 100 个聊天室中的 20,000 个联网聊天用户。在性能测试期间,我发现在获得故障转储之前,我可以在单个设备上获得最多 6,000 个连接的用户,因此在生产中我可能会在集群中使用四台服务器。

我的问题:
据我所知,聊天室绑定(bind)到服务器节点,因此,如果该节点死亡,聊天室也会随之消失,并且用户不再属于该房间。有没有办法将聊天室“复制”到另一个节点,以便留下的用户移动到复制的房间?如果没有,您如何保持用户的连续性?

最佳答案

您使用什么硬件? 6000 个连接用户似乎有点少。另外,ejabberd 不应该在负载下崩溃。它可能会减慢速度,但不会崩溃。

您的设置有问题。

关于复制聊天室节点,这并不容易。最好在客户端处理平滑重连。

但话又说回来,ejabberd 不应该在这种负载下崩溃,除非出现问题。

关于erlang - 关于如何处理 ejabberd 集群中的故障转移有什么建议吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4132165/

相关文章:

php - Jaxl 类基础回调

json - 如何使用mochijson在erlang中编码数据结构?

erlang - 何时将异步线程大小从零增加合适?

erlang - Erlang中函数参数列表的可变长度

具有不同可扩展级别的故障转移的 Java 程序

java - Mysql-Proxy 不进行故障转移(?)

exception - Erlang - 进程太多

sql-server-2005 - Sql Server 2005 中的镜像与日志传送

PHP Ejabberd 握手

makefile - 无法安装最新的 ejabberd 和 Erlang 版本 Ubuntu 14.04 LTS