阿里云物联网平台业务Topic规划最佳实践

简介: 以充电宝场景为例,讲解业务Topic设计思路

阿里云物联网平台业务Topic规划最佳实践

当我们基于阿里云物联网平台做业务开发时,最关键的一个问题就是:如何合理的规划业务通信的Topic和Payload?


基本原则:

  • Topic具有明确的操作权限:发布/订阅,避免使用 发布和订阅。
  • Topic和Payload格式一一对应,避免一个Topic对应多个Payload格式。
  • Topic携带明确的上行,下行标识符,比如up,down
  • 同类型业务Topic携带相同标识符,以便分类整理


接下来,我们以共享充电宝业务场景为例,给大家展示Topic规划的最佳实战。

1.业务Topic规划

充电宝场景下业务涉及到充电宝机柜的状态,消费者借还充电宝,广告播放业务等场景,Topic规划如下:

1.1 设备上报场景

  • 设备当前属性状态定时上报,包含电压,电流,卡槽状态,温度
  • 广告播放信息上报,包含当前广告资源id,
  • 异常事件上报,包含充电宝弹出,归还,电压过载,卡槽为空

1.2 云端下行指令场景

  • 弹出充电宝
  • 更新广告信息

1.3 机柜在线状态变化

  • 机柜在线/离线时,IoT平台会触发状态变化Topic


image.png

2.规则引擎配置

通过规则引擎配置,我们实现不同类型业务消息的流转:

2.1 异常事件流转

异常事件流转到函数计算做实时业务处理。
业务处理SQL:

SELECT
*,  --Payload完整内容
deviceName() as deviceName, --设备id
attribute('bizId') as bizId, --商务渠道id
timestamp('yyyy-MM-dd HH:mm:ss') as time --当前时间
topic() as topic --当前Topic
FROM 
"/a1WHdPQzUUn/+/user/up/event/#"  --全部上行事件

数据流转:
image.png

2.2 广告播放统计

广告播放记录存储到表格存储中,供后续离线业务分析
业务处理SQL:

SELECT
*,  --Payload完整内容
deviceName() as deviceName, --设备id
attribute('bizId') as bizId, --商务渠道id
timestamp('yyyy-MM-dd HH:mm:ss') as time --当前时间
FROM 
"/a1WHdPQzUUn/+/user/up/ad/play"  --广告播放消息

数据流转:
image.png

2.3 设备状态流转

广告播放记录存储到表格存储中,供后业务查询
业务处理SQL:

SELECT
*,  --Payload完整内容
deviceName() as deviceName, --设备id
attribute('bizId') as bizId, --商务渠道id
timestamp('yyyy-MM-dd HH:mm:ss') as time --当前时间
FROM 
"/a1WHdPQzUUn/+/user/up/property/post"  --状态属性上报

数据流转:
image.png

2.4 机柜在线状态流转

设备的在线/离线状态流转的Topic格式:

/as/mqtt/status/{productKey}/{deviceName}


payload数据格式:

{
    "status":"online|offline",
    "productKey":"pk13543",
    "deviceName":"dn1234",
    "time":"2018-08-31 15:32:28.205",
    "utcTime":"2018-08-31T07:32:28.205Z",
    "lastTime":"2018-08-31 15:32:28.195",
    "utcLastTime":"2018-08-31T07:32:28.195Z",
    "clientIp":"123.123.123.123"
}

image.png


规则引擎SQL:

SELECT productKey,deviceName,
timestamp() as timestamp ,
status,
time as currentTime ,lastTime,clientIp
FROM "/as/mqtt/status/a1WHdPQzUUn/+"


数据流转:
image.png

【往期回顾】

1.自建MQTT集群迁移阿里云IoT平台
2.IoT时代:WiFi配网技术剖析
3.微信小程序和IoT智能家居实践
4.IoT云端通用数据解析脚本实践

相关实践学习
钉钉群中如何接收IoT温控器数据告警通知
本实验主要介绍如何将温控器设备以MQTT协议接入IoT物联网平台,通过云产品流转到函数计算FC,调用钉钉群机器人API,实时推送温湿度消息到钉钉群。
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
相关文章
|
4月前
|
消息中间件 DataWorks 物联网
MQTT问题之接入阿里云物联网平台如何解决
MQTT接入是指将设备或应用通过MQTT协议接入到消息服务器,以实现数据的发布和订阅;本合集着眼于MQTT接入的流程、配置指导以及常见接入问题的解决方法,帮助用户实现稳定可靠的消息交换。
346 1
|
2月前
|
存储 运维 监控
阿里云物联网平台的优势
【7月更文挑战第19天】阿里云物联网平台的优势
52 1
|
4月前
|
Cloud Native 安全 物联网
【阿里云云原生专栏】云边端一体化:阿里云如何利用云原生技术赋能物联网
【5月更文挑战第22天】阿里云借助云原生技术赋能物联网,实现云边端一体化,提升系统弹性与敏捷性。通过容器化部署,保证高可用性与可靠性。在智能交通等领域,阿里云提供高效解决方案,实现实时数据分析与决策。代码示例展示如何使用阿里云服务处理物联网数据。同时,阿里云重视数据安全,采用加密和访问控制保障数据隐私。丰富的工具和服务支持开发者构建物联网应用,推动技术广泛应用与发展。
250 1
|
4月前
|
消息中间件 存储 JavaScript
阿里云IOC物联网异步处理基础概念
该内容介绍了异步处理基础和消息队列的相关概念。首先,同步处理指任务完成后才能执行其他操作,而异步则允许任务并行执行,不阻塞程序。异步能提高系统并发性和响应性,但也增加复杂性和资源消耗。接着,提到了消息队列,包括生产者、消费者、队列、broker和topic等概念,并指出在IoT中,设备作为生产者发送消息到特定topic,消费者从队列获取数据。最后,简要介绍了AMQP协议,它是用于应用程序间消息传递的开放标准,常用于分布式系统和物联网,如RabbitMQ和Apache Qpid。课程将以Apache Qpid为例接收IoT数据。
194 6
阿里云IOC物联网异步处理基础概念
|
3月前
|
传感器 存储 安全
物联网项目实施的最佳实践与挑战
【6月更文挑战第3天】物联网项目是刺激的冒险,需明确目标、选择合适设备和技术。规划、数据管理和安全至关重要。例如,Python代码展示了读取传感器数据和处理的过程。面对设备兼容性、网络稳定性、成本控制和人员技能等挑战,最佳实践是成功的关键。勇敢面对,成为物联网世界的探险家!
47 0
|
4月前
|
存储 安全 物联网
安防摄像头IPC如何快速接入阿里云Link Visual视频服务(阿里云生活物联网)
Link Visual是生活物联网平台针对视频产品推出的增值服务,提供视频数据上云、存储、转发、AI计算等能力。 大白话就是:通过阿里云的Link Visual视频服务,可以让你的IPC摄像头设备完成上云功能,并快速实现如下功能介绍中的功能。其中可以享受阿里云P2P协议支持,帮助企业节省流量服务器流量带宽。
573 7
|
4月前
|
消息中间件 网络协议 物联网
MQTT协议问题之阿里云物联网服务器断开如何解决
MQTT协议是一个轻量级的消息传输协议,设计用于物联网(IoT)环境中设备间的通信;本合集将详细阐述MQTT协议的基本原理、特性以及各种实际应用场景,供用户学习和参考。
447 1
|
11月前
|
消息中间件 Java 物联网
[笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台(二)
[笔记]阿里云物联网之业务服务端(java、php)接入阿里云平台(二)
445 0
|
7天前
|
安全 物联网 区块链
探索未来:区块链、物联网与虚拟现实技术的融合趋势
随着科技的不断进步,新兴技术如区块链、物联网和虚拟现实正逐渐融入我们的生活。本文将探讨这些技术的发展趋势和应用场景,以及它们如何相互融合,为我们的生活带来前所未有的便利和体验。让我们一起踏上这场科技之旅,感受新技术带来的无限可能!
|
2天前
|
供应链 安全 物联网
未来已来:区块链技术、物联网与虚拟现实的融合趋势
【9月更文挑战第4天】在科技的浪潮中,区块链、物联网(IoT)和虚拟现实(VR)作为三大前沿技术,正逐步从概念走向现实应用。本文将深入探讨这些技术的发展趋势,以及它们如何相互交织,形成全新的应用场景。我们将通过实际案例,揭示这些技术如何影响我们的工作、生活和社会结构,并展望它们未来的发展潜力。

相关产品

  • 物联网平台
  • 下一篇
    DDNS