以共享快递柜业务场景为例,讲讲构建高性能共享服务。
当我们的设备和物联网平台建立mqtt连接通道后,会根据业务需求传输不同的数据。本次以共享快递柜业务场景讲解topic和payload的设计。
在共享快递柜场景中,我们会涉及到C端用户操作:
在App端扫码,操作快递存取,触发后台下发指令到当前机柜,执行相关操作。
用户存取完毕,触发订单结算或其他操作
运营商后台交互操作:
下行指令
开关快递柜门
广告的添加/删除
设备数据处理
用户取走快递的消息的处理,订单结算
用户寄存的消息的处理,订单结算
广告播放的记录存储
总体思路如下:
根据业务不同划分不同topic,每个topic对应payload结构体。
当数据发送到物联网平台,我们通过规则引擎把数据分流到多个mq队列、DB、时序数据库等。
不同优先级队列,DB分配不同计算资源,配置降级策略
下图展示了设备数据上行场景的划分和后台系统不同处理方式
下图展示了云端下行控制指令的来源和完整链路
本文系作者在时代Java发表,未经许可,不得转载。
如有侵权,请联系nowjava@qq.com删除。