整个系统架构如下:

MQTT 和RocketMQ的区别:

1、传感器采用GPRS传输数据,采用微消息队列MQTT,微消息队列 MQTT 主要承担移动端连接接入、连接管理、数据转发等工作,相当于一个无限扩展能力的连接网关。传感器传送数据到阿里云Iot。MQTT支持Python,java,有相应的sdk,地址如下:

阿里云Iot的设备传输数据格式是json格式,采用post方式提交数据,具体格式如下:
设备属性上报
通过该Topic获取设备上报的属性信息。
Topic:/sys/{productKey}/{deviceName}/thing/event/property/post
数据格式:
{
"iotId":"4z819VQHk6VSLmmBJfrf00107ee200",
"productKey":"1234556554",
"deviceName":"deviceName1234",
"gmtCreate":1510799670074,
"deviceType":"Ammeter",
"items":{
"Power":{
"value":"on",
"time":1510799670074
},
"Position":{
"time":1510292697470,
"value":{
"latitude":39.9,
"longitude":116.38
}
}
}
}
参数说明:
| 参数 | 类型 | 说明 |
|---|---|---|
| iotId | String | 设备在平台内的唯一标识 |
| productKey | String | 设备所属产品的唯一标识 |
| deviceName | String | 设备名称 |
| deviceType | String | 设备类型 |
| items | Object | 设备数据 |
| Power | String | 属性名称,产品所具有的属性名称请参考TSL描述 |
| Position | String | 属性名称,产品所具有的属性名称请参考TSL描述 |
| value | 根据TSL定义 | 属性值 |
| time | Long | 属性产生时间,如果设备没有上报默认采用云端生成时间 |
| gmtCreate | Long | 数据流转消息产生时间 |
发送方式如下:

本文介绍了如何通过阿里云Iot的MQTT和RocketMQ将传感器数据传输到服务器和数据库。首先,传感器使用GPRS和MQTT发送数据到阿里云Iot,接着,数据通过RocketMQ进行消息转储。详细讲述了MQTT和RocketMQ的SDK使用,包括Python和Java的示例代码,以及数据格式和确认消费的过程。
6万+

被折叠的 条评论
为什么被折叠?



