【发布时间】:2013-05-13 15:19:17
【问题描述】:
我们正在开发使用 XMPP 相互通信的特殊设备。我现在正在开发的新 API 也应该与这些设备通信。我面临的问题 - 所有这些设备都在建立小团体 - 对于我们拥有的每个客户......所以我们将为每组设备拥有一个聊天室,或者为我们的每个客户拥有他的一堆设备;)
但是现在.. api 应该能够与每个连接的设备通信。我不需要真正的广播机制 - 最后,我只会向一个特定的设备发送消息..
但我也不想登录每个聊天室 - 运行一个拥有超过 40k 客户和更多设备的产品,将以一个有趣的 api 结尾,即在启动时打开超过 40k 聊天室......即使还没有尝试过,我也无法想象这样的应用程序会运行良好......即使我们可以在几年内拥有数百万客户......我不喜欢线性增长的解决方案客户的数量,如果你知道我的意思:/
现在,基本上我正在考虑一个解决方案,我可以使用基本的 XMPPConnection 来完成我的工作。
MyCustomMessage msg = new MyCustomMessage();
msg.setTo("*"); // don't know what to address, i want to send it to "all"
msg.setFrom("ThatAPI"); // just a string telling that is sent from my java api ;)
msg.setEvent(event); // stuff that is coming through the parameters of the method where this code is inside
msg.setCustomStanza(data); // same here
connection.sendPacket(msg); // my try to send it to all till now..
在 Ignite Realtime 论坛的某个地方,我读到一个人“解决”了它,但他所说的一切都是“它现在正在工作,我通过连接的 sendPacket 推送我的消息”......好吧,我的尝试这似乎不起作用:(
任何更好的想法/实际实现如何才能正常工作?
基本上,我开始认为 XMPP 根本不是实现此类目标的最佳技术 - 我希望我可以拥有一个真正/基本的套接字实现,这样的事情将是小菜一碟.. 但我可以'不要选择 - 第三方系统已经实现了 XMPP...没有足够的时间来改变这一切...如果您想知道我们为什么要在 XMPP 上尝试这个..
【问题讨论】:
-
听起来像是 XMPP PubSub 的案例。