RTIO

给设备插上「HTTP」翅膀🪽!

物联网设备端也相当于一个小服务器,RTIO可将其「服务接口」映射到云端,请求者可在「任意位置1」通过HTTP安全访问物联网设备。
RTIO为物联网通信代理服务,旨在降低物联网应用开发的复杂度。RTIO与MQTT代理服务的发布订阅模型不同,为同步远程调用模型,REST-Like2风格,一次调用即可返回设备执行结果。

物联网应用开发速度 x 10

面向物联网设备远程控制场景3

物联网应用维护复杂度 x 0.01

RTIO解耦各端,随各端迭代版本增多而凸显价值3

  1. 请求者能够通过公网或专用网络访问到RTIO服务。
  2. REST-Like指类似RESTful风格,通过URI标识能力接口。
  3. 参考FAQ了解评估模型。具体应用不同效率提升可能不同。

RTIO特点

同步远程调用

请求端直接使用HTTP协议对目标物联网设备发起调用,一次调用直接返回物联网设备的处理结果。
不同于MQTT的PUBLISH响应仅为代理服务接收结果,RTIO的请求响应会承载设备执行的结果。

REST-Like风格

类似RESTful风格,使用URI标识能力接口,便于分类和版本管理。
提供了双向CoPOST方法,类似HTTP-POST方法。提供设备观察ObGET方法,类似HTTP-GET方法。

观察模式

观察模式类似MQTT消息订阅,但更为灵活,可以随时发起观察和取消。调用端仍然使用HTTP协议,无需额外操作,比如订阅。

轻量协议

RTIO设备接入协议面向受限设备设计,基于TCP协议,URI传输时采用经HASH「压缩」后的URI,仅4字节,频繁调用时减少带宽使用,参考设备接入协议。

支持不稳定网络

物联网设备端SDK支持重连机制。

安全链接

物联网设备端支持TLS,请求端支持HTTPS协议。

JWT验证

HTTP调用端支持JWT验证,带有合法的JWT的请求才能请求RTIO服务,对设备发起调用。

百万链接

RTIO服务单节点支持百万设备链接。

应用场景

用户控制物联网设备

用户通过移动端或PC/WEB端远程控制物联网设备。
用户端无需集成SDK,直接使用HTTP协议透过RTIO代理服务访问物联网设备。可启用安全链接和JWT进行对设备安全访问。

服务端控制物联网设备

服务端无需集成SDK,可使用HTTP协议或GRPC协议透过RTIO代理服务访问物联网设备。

通过边缘设备控制物联网设备

RTIO代理服务使用Golang实现,一个可执行文件,轻松部署于ARM、x86等架构的边缘设备。可通过HTTP透过边缘侧RTIO访问物联网设备。

现在开始