【问题标题】:Ejabberd MUC with more that 5K users拥有超过 5K 用户的 Ejabberd MUC
【发布时间】:2021-06-14 08:53:34
【问题描述】:

Ejabber 是可大规模扩展的服务器,article 表明 Ejabber 可以支持 2M+ 并发用户。

但对于多用户聊天 (MUC),Ejabber 仅支持 5K 用户(根据 ejabberd 模块代码:here)。 Ejabbered 应该能够处理更多的用户,所以我向 Ejabberd Gurus 提出的问题:

  1. 为什么 Ejabberd 会限制 MUC 中仅支持 5k 用户?
  2. 如何在 MUC 中支持超过 5K 的用户?
  3. 集群能否缓解这一限制?

提前致谢。

【问题讨论】:

    标签: xmpp ejabberd ejabberd-module


    【解决方案1】:

    您使用的是“用户”一词,但显然您不是在思考人,在人类,对吧?

    我希望你不打算让 5000 个人加入和离开一个聊天室,每次他们加入和离开聊天室时都与其他 4999 人分享他们的存在。我希望你不要指望这 5000 人向所有其他 4999 人发送公共信息。

    那将是一个蟋蟀笼。

    【讨论】:

    • 对。单个请求将导致 4.999K 的另一个更新。假设我必须这样做,并且我知道我可以使用网络套接字来做到这一点。你知道如何用 Ejabberd 做到这一点吗?
    【解决方案2】:
    1. 为什么 Ejabberd 会限制 MUC 中仅支持 5k 用户?

    因为让 5000 人彼此分享他们的存在并与所有其他 4999 人聊天是没有意义的。

    1. 如何在 MUC 中支持超过 5K 的用户?

    很简单,只需编辑源代码并添加一个0到5000即可。重新编译,重新安装。但是,如果您的机器滞后,请不要抱怨。这样做需要您自担风险。

    1. 集群能否缓解这一限制?

    不,因为每个房间都由一个进程处理,并且该进程存在于特定的机器中。

    XEP-0045 (MUC) 并非旨在让数千个聊天机器人在同一个房间内。是用来聊天的。如果您没有人聊天,请使用适当的工具来完成您的任务,例如 MucSub 或 PubSub...

    【讨论】:

      猜你喜欢
      • 2017-01-11
      • 2017-07-14
      • 2016-12-09
      • 1970-01-01
      • 2017-01-18
      • 2017-05-11
      • 2018-10-23
      • 2016-06-04
      • 2015-09-10
      相关资源
      最近更新 更多