HiveMQ/RabbitMQ作为Thingsboard物联网系统之前的负载平衡MQTT节点

4ngedf3f  于 2023-01-30  发布在  RabbitMQ
关注(0)|答案(2)|浏览(324)

我们的终端设备通过MQTT将数据推送到基于Thingsboard物联网平台的物联网系统。所有设备连接的地方只有一个名为/telemetry的MQTT主题。服务器根据用作MQTT用户名的设备令牌来知道数据属于哪个设备。
由于数据加载高峰并不罕见,因此会发生中断。

    • 我的问题是**

是否有可能以及如何在设备和我们的物联网系统之间使用HiveMQ(RabbitMQ或一些类似的产品)来避免数据丢失和平滑峰值?

xtupzzrd

xtupzzrd1#

This post说明如何使用服务质量级别、离线缓冲、调节、自动重新连接等功能来避免数据丢失并保持正常运行。
值得注意的是MQTT和HiveMQ内置了一些特性,可以帮助避免数据丢失、保证交付、流量峰值和处理背压。
在扩展部署足迹之前,您可能需要考虑一下可以使用现有工具做些什么,如果没有必要,这只会增加不必要的复杂性。

pb3s4cty

pb3s4cty2#

我建议在MQTTBroker和ThingsBoard之间使用Kafka或Confluent。(而不是RabbitMQ中的RAM),并且可以在多个集群节点之间伸缩。您还可以通过重置偏移量将数据重新加载到ThingsBoard。如果规则链的配置出现错误,您需要让ThingsBoard重新处理数据,这将非常有用。要连接Kafka/融合您可以使用ThingsBoard集成。
点击此处了解更多详情:
https://medium.com/python-point/mqtt-and-kafka-8e470eff606b

相关问题