Xmpp 路由到支持ejabberd中单个域的特定XEP-0114实例?
我有一个简单的Ejabberd18.09安装程序,在域下运行一个测试组件: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 .
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决定,而域_平衡更像是一个建议或种子,可以路由到哪个可用组件?这对我来说已经足够好了!