Xmpp 路由到支持ejabberd中单个域的特定XEP-0114实例?

Xmpp 路由到支持ejabberd中单个域的特定XEP-0114实例?,xmpp,ejabberd,Xmpp,Ejabberd,我有一个简单的Ejabberd18.09安装程序,在域下运行一个测试组件:test.localhost 配置非常简单: port: 8888 module: ejabberd_service hosts: "test.localhost": password: "secret" 我已将XEP-0114/XMPP组件设置为通过一个Procfile运行多个实例: test1: ./testcomponent --address localhost:8888 --secret .

我有一个简单的Ejabberd18.09安装程序,在域下运行一个测试组件:
test.localhost

配置非常简单:

port: 8888
module: ejabberd_service
hosts:
   "test.localhost":
       password: "secret"
我已将XEP-0114/XMPP组件设置为通过一个Procfile运行多个实例:

test1: ./testcomponent --address localhost:8888 --secret ... --name test.localhost
test2: ./testcomponent --address localhost:8888 --secret ... --name test.localhost
test3: ./testcomponent --address localhost:8888 --secret ... --name test.localhost
现在,当我向
test.localhost
下的任何联系人发送消息时,其中一个联系人肯定会收到消息。太好了!对于任何给定的xmpp组件,您都可以扩展到多个主机和节点,而不必担心单点故障


是否有办法始终将发送到
user1@test.localhost
到上面的
test1
过程?可能是test1实例通过
user1@test.localhost
作为联系人

您应该使用带有值的选项“域\u平衡”
bare\u source
。它将确保来自给定用户的所有数据包到达同一组件。
文档在这里:

太好了,谢谢!听起来路由最终还是由ejabberd决定,而域_平衡更像是一个建议或种子,可以路由到哪个可用组件?这对我来说已经足够好了!