这是一篇关于我们正在做的物联网数据传输处理架构的数据报告。
业务流程说明
物理设备通过 MQTT 协议向 MQTT 服务器进行数据传输,需要将硬件上报的数据统一进行数据存储。核心数据处理流程如下
- 案例数据
{"Timestamp":"1709102879000","Format":"JSON","Data":"{"cherry":94,"orange":100}"}
- 从案例数据中将数据进行解析,解析脚本如下。
function main(data) {
var datac = JSON.parse(data).Data;
var parse = JSON.parse(datac);
var keyValuePairs = {};
return [parse]
}
- 将解析后的设备数据和本系统的信号信息进行关联。
- 提取上报数据的时间。
- 信号数据持久化
我们的报告
我们测试了30台设备以每秒上报一个设备数据的数据性能。
我们使用2G+1G的内存进行架构验证。其中2G用来维护MQTT客户端,1G用来进行数据处理。
实时性
在过去的6小时中,我们的架构方案在数据延时上做到了5秒均值在100毫秒以内、15秒均值在90毫秒以内。
Java 程序
- 1G数据处理程序内存图
- 2G MQTT客户端程序内存图
改进方向
MQTT客户端程序的内存使用率波动过大需要调整。
联系我们
- 如果你也在做物联网相关项目,可以与我们进行联系。添加备注:物联网。