开发者学堂课程【物联网平台云上开发:物联网平台第三方服务开发】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/563/detail/7711
物联网平台第三方服务开发
内容介绍:
一、阿里云IoT平台的服务端订阅能力
二、演示服务端订阅的使用过程
一、阿里云IoT平台的服务端订阅能力
1、当设备有数据上传到阿里云IoT平台后,可以通过HTTP/2的一个通道,直接把数据流转到企业的服务器里。当企业的应用集成了SDK后,就和IoT平台建立了一个HTTP/2的连接通道,同时也支持以集群的方式集成。当设备端消息上报到IoT平台之后,IoT平台会选择其中一条通道把数据推送过去,也相当于一个简单的负载均衡。
如果此企业的应用不是Java8语言的,可以考虑使用规则引擎,先流转到MQ转消息队列,或者是把数据直接流转到函数计算,在函数计算里面,通过HTTP的一个调用把数据推到自己的企业服务器上。
二、演示服务端订阅的使用过程
1、首先进入产品详情页,点击服务端订阅,然后点击立即设置,接着可以选择多种信息类型的接收,这里选择设备上报消息以及设备状态变化通知,接着选择保存,这样就开通了服务端订阅。
2、服务端订阅依赖的是accessKey的身份认证以及阿里云的uid。uid可以在个人信息里找到,accessKey也可以在这里获取。有了uid之后就可以按照指引来做消息接收,只需要初始化endPoint ,regionId,accessKey,accessSecret就可以。当连接之后,把接收到的messageToken信息打印出来。这里打印了gettopic,getpayload时间以及qos,这时候当启动设备开始上报数据,就可以看到自己的HTTP/2的server能收到IoT平台发来的消息。
首先是设备上线,接下来是数据发送,然后就接收到了数据包,数据发送。当停下来结束程序之后,这边会收到一个设备下线的一个通知(offline)接下来再启动一个服务端的订阅,那么现在就有两个服务端订阅程序来启动。
当启动两个服务端订阅的接收端之后,那数据就会随机的发到两个订阅端上。