如何扩展XMPP安装?

如何扩展XMPP安装?,xmpp,scalability,ejabberd,xmppframework,Xmpp,Scalability,Ejabberd,Xmppframework,我们正在从头开始构建XMPP服务器(由于我们有特定的需求)。我们无法获得清晰图像的一个领域是如何缩放XMPP。假设我有10000个用户,XMPP服务器的每个实例最多可以处理2000个并发客户端/连接。我们将运行多个XMPP实例,客户端将使用该实例连接到其中一个正在运行的实例,如下所述: 我认为所有主要的XMPP服务提供商都使用多台服务器,就像Google使用5台XMPP服务器一样,如下所述: 现在假设我有两个用户:A和B。A连接到服务器1,B连接到服务器2。当A向B发送消息时,整个消息流是如何从

我们正在从头开始构建XMPP服务器(由于我们有特定的需求)。我们无法获得清晰图像的一个领域是如何缩放XMPP。假设我有10000个用户,XMPP服务器的每个实例最多可以处理2000个并发客户端/连接。我们将运行多个XMPP实例,客户端将使用该实例连接到其中一个正在运行的实例,如下所述:

我认为所有主要的XMPP服务提供商都使用多台服务器,就像Google使用5台XMPP服务器一样,如下所述:

现在假设我有两个用户:A和B。A连接到服务器1,B连接到服务器2。当A向B发送消息时,整个消息流是如何从A到服务器_1再到服务器_2再到B的?服务器_1如何知道B已连接到服务器_2?这是通过S2S完成的吗?同样,我只关心可伸缩性,而不关心两个不同的XMPP服务提供商之间的互操作


任何帮助都会很好。

没有关于如何扩展XMPP服务器的通用规则。这实际上取决于您想要构建的项目类型。ejabberd提供了基本的工具来构建一个非常可伸缩的服务器,但是您需要详细了解XMPP是如何工作的,以及如何设计项目使其工作

我建议你读:


注:谷歌的XMPP服务器远不止5台。

很抱歉我投了一票;那是个错误。