平台介绍
平台简介
智能平台的主要功能如下:
智能家居基础架构平台定位于PaaSDaaS服务的兼顾。
下面具体介绍一下我们如何定位PaaS服务的:
在物联网应用和真实设备之间搭建高效、稳定、安全的应用平台:面向设备,适配多种网络环境和常见传输协议,提供各类硬件终端的快速接入方案和设备管理服务;面向企业应用,提供丰富的API和数据分发能力以满足各类行业应用系统的开发需求,使物联网企业可以更加专注于自身应用的开发,而不用将工作重心放在设备接入层的环境搭建上,从而缩短物联网系统的形成周期,降低企业研发、运营和运维成本。
再来看看DaaS服务定制:
首先来理解一下什么是DaaS服务:
由上图可知,在石器时代吃披萨,要自己买好一切,自己动手丰衣足食的时代;到了互联网+时代,我们只要动动手指就可以吃到现成的各种美食,但是有时候嘴馋吃了披萨还想喝杯水果茶,披萨店有没有水果茶,只能再到别家点;到了与计算时代,只有自己写好菜单,不用拘泥于披萨店的各种食材搭配,但是披萨最后做成啥样子、食材的比例还是由店家掌握;到了数据即服务的时代,只要你想得出来店里都有,我点好原料(各种半成品),买回家,自己再加工一番。我们可以看到数据即服务时代,顾客具有高度的灵活性和可选择性。
再回到我们的智能家居系统的DaaS服务,我们致力于为各类用户群提供数据服务,顾客按要求订购厂家的原子化的数据服务,然后自由地做好可视化界面即可。
智能设备接入
支持自定义协议和标准协议的设备接入,如Packet封包协议、HTTP等,满足多种应用场景的使用需求。
支持用户协议自定义,通过上传解析脚本来完成协议的解析
设备管理
提供设备生命周期管理功能,支持用户进行设备注册,设备更新,设备查询、设备删除
提供设备在线状态管理功能,提供设备上下线的消息通知,方便用户管理设备的在线状态
提供设备数据存储能力,便于用户进行设备海量数据存储于查询
数据及访问安全
支持用户采用私有协议以及私有加密方式进行数据传输,保证数据安全
分布式结构、异地双活等多重数据保障机制,提供安全的数据存储服务
支持安全的访问鉴权机制,有效降低密钥以及访问令牌被仿冒的风险【支持基于身份的SM9认证协议】
丰富API支持
开放的API接口,通过简单的调用快速实现生成应用
不断丰富的API种类,包括设备增删改查、数据流创建、数据点上传、命令下发等,帮助用户便捷的构建上层应用
应用集成组件
提供消息队列MQ,便于用户应用系统快速获取设备数据/事件
提供HTTP推送服务,可以将数据以HTTP请求的方式主动推送至应用系统【Django框架将数据推送到数据端】
支持简单规则配置,用户可自定义数据处理逻辑
应用转化【web控制子系统,实现了丰富的智能家居图表展示、监控、控制页面】
为初创用户提供简易应用生成工具,快速实现的简单应用
提供丰富的图表展示组件,满足多场景使用需求
平台的架构
平台之间的多Agent模式通信方式
各个平台都是独立运行的系统,可以单独部署并提供相应的服务。各个子系统之间以多Agent模式进行通信,即不再是传统的CS模式,传统的C端主动发起socket连接请求,S端负责监听socket端口,相应客户端的请求。而agent模式,C端既能主动发起连接请求,又能监听来自服务端推送过来的实时请求。
具体的实现细节:类比于socket通信。
如何解决心跳检测、黏包、异常检测???
设备接入
提供安全稳定的设备接入服务,支持包括LPacket封包协议:
设备管理
平台针对不同的使用场景,提供关于设备的包括生命周期管理、在线状态监测、在线调试、数据管理等功能在内的丰富的设备管理功能。
API
提供开放的、丰富的、基于HTTP/HTTPS的API接口,用户可以使用API进行设备管理,数据查询,设备命令交互等操作,在API的基础上,根据自己的个性化需求指定搭建上层应用。
HTTP推送
针对某些实时性要求较高的场景,提供数据推送功能,可以过滤掉设备端频繁的周期性上报数据,将用户关心的实时性较高的数据,通过HTTP/HTTPS的方式推送到用户的应用服务器上。
消息队列MQ
消息队列MQ是为实现应用层快速可靠地获取设备消息而推出的消息中间件服务,用户可以自定义消息生产者生产的消息类型,例如设备数据点,设备生命周期事件等,用户应用层可以作为消息消费者与服务建立长连接进行消息消费。
安全认证
提供用户资源访问安全认证机制,提供产品级以及设备级的不同粒度的密钥,并支持用户自定义密钥访问权限,最大限度保证用户设备以及应用层接入的安全性。