IoT 物联网平台如何实现 100万/秒 消息广播?

简介: IoT 物联网平台如何实现 100万/秒 消息广播?
+关注继续查看

传送门:5个视频讲解,30个场景案例汇总

image.png

在物联网场景中,常常会有全量设备消息广播诉求。如何把消息瞬间推送到海量在线设备上?


阿里云IoT企业物联网实例为开发者提供了 PubBroadcast 接口,可以在秒级触达100万在线设备,使得企业面在面对高并发需求时无后顾之忧。


创建4个设备和广播内容

我们以收款音箱场景消息广播为例,演示全量设备广播功能。

设备和广播消息体

image.png

全量设备广播接口PubBroadcast

image.png

设备端收到的消息报文示例:

Topic示例:
/sys/g6palBDnzyT/dk004/broadcast/request/1386995865331441413

Payload示例:
{
    "volume"80,
    "mode"4
}


全量广播开发实战

设备端开发

IoT物联网平台默认提供全量广播Topic,设备端无需预先订阅,即可接收到云端的广播消息。

设备端应用程序代码(Node.js 示例):

// node broadcast-device.js
const mqtt = require('aliyun-iot-mqtt');

//1.设备身份三元组+区域
const options = require("./iot-device-config.json");

// 2. 建立MQTT连接
const client = mqtt.getAliyunIotMqttClient(options);

//系统全量广播 Topic 前缀
const allBroadcastTopic = `/sys/${options.productKey}/${options.deviceName}/broadcast/request`;

client.on('message'function(topicmessage) {
    //过滤全量广播消息
    if (topic.indexOf(allBroadcastTopic> -1) {

        console.log("设备收到全量广播消息:")
        console.log("\ttopic=" + topic)
        console.log("\tmessage=" + message)
    }
})


iot-device-config.json 设备配置参数:

{
    productKey"g6palBDnzyT",
    deviceName"dk004",
    deviceSecret"424ed56661980c604255507d1b81464e",
    host"iot-060a08kg.mqtt.iothub.aliyuncs.com"
}


云端后台开发

云端业务系统调用IoT物联网实例的PubBroadcast接口,即可发送广播消息,触达全量在线设备。调用代码示例(Node.js):

// node broadcast.js
const co = require('co');

const RPCClient = require('@alicloud/pop-core').RPCClient;

const options = {
    accessKey"自己的accessKey",
    accessKeySecret"自己的accessKeySecret"
};

//1.创建client
const client = new RPCClient({
    accessKeyIdoptions.accessKey,
    secretAccessKeyoptions.accessKeySecret,
    endpoint'https://iot.cn-shanghai.aliyuncs.com',
    apiVersion'2018-01-20'
});

// 2.构造iot API
// 这里是POP API的Action
const action = 'PubBroadcast';
// 广播内容
const payload = {
    volume80,
    mode4
};
// 完整入参 params
const params = {
    ProductKey"g6palBDnzyT",
    IotInstanceId"iot-064a04kg",
    MessageContentnew Buffer(JSON.stringify(payload)).toString("base64")
};

co(function*() {
    //3.发起全量广播PubBroadcast API调用
    try {
        const response = yield client.request('PubBroadcast'params);

        console.log("PubBroadcast 成功 =====>"JSON.stringify(response));
    } catch (err) {
        console.log("PubBroadcast 失败 =====>"JSON.stringify(err));
    }
});


全量广播联调

业务服务器调用 PubBroadcast API 日志:image.png

image.png

4个设备端收到的广播消息日志:

Topic的消息id相同,deviceName不同

image.png


往期推荐


1、39张传感器工作原理GIF图汇总

2、智能手持测温枪开发实践

3、JMeter压测MQTT服务性能实战

4、IoT物联网平台日志服务详解

5、自建MQTT集群迁移阿里云IoT实践

6、工业Modbus电力104规约接入IoT平台

7、设备免烧录三元组,即时注册解决方案

8、IoT+TSDB+Quick BI 搭建楼宇环境监控

9、JS全栈开发,构建智能家居小程序


相关实践学习
钉钉群中如何接收IoT温控器数据告警通知
本实验主要介绍如何将温控器设备以MQTT协议接入IoT物联网平台,通过云产品流转到函数计算FC,调用钉钉群机器人API,实时推送温湿度消息到钉钉群。
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
相关文章
|
9月前
|
消息中间件 监控 物联网
阿里云iot物联网平台监控设备 在线离线状态 解决方案
阿里云iot物联网平台监控设备 在线离线状态 解决方案
1222 0
阿里云iot物联网平台监控设备 在线离线状态 解决方案
|
10月前
|
物联网
《阿里云IoT物联网平台技术介绍和入门实战》电子版地址
阿里云IoT物联网平台技术介绍和入门实战
86 0
《阿里云IoT物联网平台技术介绍和入门实战》电子版地址
|
11月前
|
JavaScript 数据可视化 物联网
iot studio中使用物联网平台提供的api
iot studio中使用物联网平台提供的api。
237 0
 iot studio中使用物联网平台提供的api
|
消息中间件 运维 监控
|
数据可视化 物联网 API
物联网平台 --- iot studio跳转页面传递数据
跳转页面时将参数附带到另一个页面。
241 0
物联网平台 --- iot studio跳转页面传递数据
|
物联网 数据格式
物联网平台 --- iot studio 如何控制 “闪烁告警”组件
通过配置数据接口,控制组件的扩散速度。
283 0
物联网平台 --- iot studio 如何控制 “闪烁告警”组件
|
存储 物联网 数据挖掘
阿里云物联网平台 - iot studio调用 “新版本数据分析” 接口展示设备数据
物联网数据分析LA(Link Analytics)是阿里云为物联网开发者提供的数据智能分析产品,针对物联网数据特点,提供海量数据的存储备份、资产管理、报表分析和数据服务等能力,帮助企业用户更容易地挖掘物联网数据中的价值
374 0
阿里云物联网平台 - iot studio调用 “新版本数据分析” 接口展示设备数据
|
SQL 存储 数据采集
阿里云物联网平台 - iot studio调用 “老版本数据分析” 接口展示设备数据
老版本数据分析:是阿里云为物联网开发者提供的设备智能分析服务,全链路覆盖了设备数据采集、管理(存储)、清洗、分析等环节,有效降低了数据分析门槛,实现了设备数据与业务数据的融合分析透视
258 0
阿里云物联网平台 - iot studio调用 “老版本数据分析” 接口展示设备数据
|
监控 JavaScript 数据可视化
国内四大 IoT 物联网平台选型综合评估报告
近年来,国内两轮电动车保超3亿辆,电动自行车充电火灾呈多发频发趋势。今年8月1日国家颁布了《高层民用建筑消防安全管理规定》,要求电动车独立区域集中停放、充电,充电装置应具备定时断电、过载保护、短路保护、漏电保护等功能 ,促进了电动车智能充电行业的爆发。
930 0
国内四大 IoT 物联网平台选型综合评估报告
|
域名解析 数据采集 运维
解密IoT物联网平台设备如何快速上云、实现全球就近接入
近年来,物联网技术正以指数级的速度日渐成熟,并潜移默化的改变着人们的生活。根据国际数据公司IDC的预测估计,到2025年,将有416亿台联网的IoT设备或“物”,生成79.4 ZB的数据。同时IDC中国研究数据显示,2020年全球物联网支出达到6904.7亿美元,其中中国市场占比23.6%。IDC预测,到2025年全球物联网市场将达到1.1万亿美元,年均复合增长11.4%,其中中国市场占比将提升到25.9%,物联网市场规模全球第一。
解密IoT物联网平台设备如何快速上云、实现全球就近接入
相关产品
物联网平台
推荐文章
更多