关于基于XMPP的聊天服务架构的建议?

关于基于XMPP的聊天服务架构的建议?,xmpp,Xmpp,假设我的目标是创建一个聊天服务。我还想要多个独立的聊天室 我倾向于使用XMPP进行扩展/负载平衡。我读了这篇文章,我正在看 假设我想从一个客户机向另一个客户机发送消息。根据这个图表, 1) 发送方向发送方的XMPP服务器发送消息。 2) 发送方的XMPP服务器将消息中继到MUC服务器。 3) MUC服务器确定收件人连接到哪个服务器,并在那里转发消息 (如果我错了,请纠正我) 两个问题: 1) 本文建议将MUC集群到多个服务器上。这是否意味着a)在发送方和接收方服务器上镜像MUC服务器的状态,或

假设我的目标是创建一个聊天服务。我还想要多个独立的聊天室

我倾向于使用XMPP进行扩展/负载平衡。我读了这篇文章,我正在看

假设我想从一个客户机向另一个客户机发送消息。根据这个图表,

1) 发送方向发送方的XMPP服务器发送消息。 2) 发送方的XMPP服务器将消息中继到MUC服务器。 3) MUC服务器确定收件人连接到哪个服务器,并在那里转发消息

(如果我错了,请纠正我)

两个问题:

1) 本文建议将MUC集群到多个服务器上。这是否意味着a)在发送方和接收方服务器上镜像MUC服务器的状态,或者b)将图中的MUC部分转换为多个服务器,并且发送方和接收方服务器与该集群进行透明的通信


2) 当用户第一次连接到节点时,网络如何知道将用户绑定到哪个服务器?是否有一个单一的入口点机器来委派此任务?

就系统入口点而言,您的客户端将始终使用默认入口点或您在DNS SRV设置中指定的入口点,即用户rcv,并且仅通过xmpp服务器端口5222(c2s)或5269(s2s)发送数据

因此,MUC消息节流将如下所示(如果我误解了您的问题,请告诉我):

a) 如果发送方/接收方都在您的服务器上注册

sender@myjabber.commyjabber.com:5222 muc.myjabber.com myjabber.com:5222receiver@myjabber.com

b) 如果发件人是@gmail.com用户和Rcvr@myjabber.com用户

sender@gmail.comtalk.google.com:5222 myjabber.com:5269 muc.myjabber.com myjabber.com:5222receiver@myjabber.com