应用程序直接与消息队列通信与与代理通信(前端服务)

时间:2015-07-14 07:47:19

标签: architecture message-queue iot proxy-server

我们正在为我们的产品开发新的架构。 Out产品并不完全是物联网 - 设备与客户端站点的单个盒子通信,并且该盒子与我们的服务器通信。

我们有两个选择:

  1. 该框将直接向队列发送消息,该队列将由工作服务器接收并在轮次处理。
  2. 该框将向前端服务器发送消息。该服务器所做的就是将消息放入队列中供工作人员处理。
  3. 每种方法都有利弊。与队列直接通信的头号专家是我们不需要在机器上花钱来保存前端服务。

    使用前端服务器的最大优势是它作为我们正在使用的队列技术的抽象层 - 所以如果我们更改队列,我们​​不需要为他们更新所有客户端的新版本继续工作我们考虑的另一个优点是它允许我们模拟同步调用。

    当然,每个人都有很多优点和缺点。建议的工作方式是什么?最佳做法?安全

1 个答案:

答案 0 :(得分:0)

需要考虑的一个方面是可扩展性。您需要为此支持负载平衡器。

虽然某些消息队列协议可以在负载均衡器上运行(参见例如Load blancing MQTT broker),但我建议在做出决定之前对其进行测试。 如果使用普通REST,则负载均衡器兼容性不是问题。

要检查的其他方面是: *防火墙兼容性:是"框"在与服务器不同的netowkr(例如公司内部网)中?同样在这种情况下,HTTP / REST是一种更安全的选择。