gpt4 book ai didi

javascript - MQTT 作为集中式通信协议(protocol)

转载 作者:行者123 更新时间:2023-11-30 02:38:13 25 4
gpt4 key购买 nike

我想为大量设备实现服务。该服务应该能够在服务器和客户端之间发送/接收(小 - 最大 1kB)消息,也能够在设备和设备之间发送/接收 p2p 消息。

目前我正在考虑使用 MQTT 来实现这一点,因为它似乎是一种轻量级的低流量生成协议(protocol)。如本question所述XMPP 也可能是替代方案,但我不确定这是否能提供我需要的性能。

总而言之,我对该协议(protocol)有以下期望:

  1. 开销小
  2. 小负载
  3. 大量客户(从 100.000 开始)
  4. 处理不稳定的网络连接
  5. 可扩展性,例如通过使用多个代理实例
  6. 客户端之间的 P2P 连接(可以通过相关服务器解决)
  7. 如果可能,使用 Java、JavaScript 和 C++ 实现开源

MQTT 对我来说是正确的方法还是我应该考虑一些替代方案?另请记住,我需要创建高度可扩展的服务。

最佳答案

我认为如果您以正确的方式使用 MQTT,您的所有期望除了 6. 都可以实现。你应该看看http://www.eclipse.org/paho/http://mosquitto.org/用于开源实现。

由于 MQTT 具有发布-订阅架构,其中每条消息都发送到消息代理(服务器)并由其分发,因此 P2P 可能是一个问题。您可以为两个客户端之间的每个连接使用专用主题,但消息仍必须通过消息代理传递。作为解决方法,您可以通过 MQTT 在客户端之间协商 P2P 连接,然后将协商的 channel 与其他协议(protocol)一起使用。

关于javascript - MQTT 作为集中式通信协议(protocol),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31022007/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com