我们的物联网系统,做到了传输+处理延时在100毫秒以内

132 阅读1分钟

这是一篇关于我们正在做的物联网数据传输处理架构的数据报告。

业务流程说明

物理设备通过 MQTT 协议向 MQTT 服务器进行数据传输,需要将硬件上报的数据统一进行数据存储。核心数据处理流程如下

  1. 案例数据
 {"Timestamp":"1709102879000","Format":"JSON","Data":"{"cherry":94,"orange":100}"}
  1. 从案例数据中将数据进行解析,解析脚本如下。
 function main(data) {
     var datac = JSON.parse(data).Data;
     var parse = JSON.parse(datac);
     var keyValuePairs = {};
 ​
    
     return [parse]
 }
  1. 将解析后的设备数据和本系统的信号信息进行关联。
  2. 提取上报数据的时间。
  3. 信号数据持久化

我们的报告

我们测试了30台设备以每秒上报一个设备数据的数据性能。

我们使用2G+1G的内存进行架构验证。其中2G用来维护MQTT客户端,1G用来进行数据处理。

实时性

在过去的6小时中,我们的架构方案在数据延时上做到了5秒均值在100毫秒以内15秒均值在90毫秒以内

img

Java 程序

  • 1G数据处理程序内存图

img

  • 2G MQTT客户端程序内存图

img

改进方向

MQTT客户端程序的内存使用率波动过大需要调整。

联系我们

  • 如果你也在做物联网相关项目,可以与我们进行联系。添加备注:物联网。

img