|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- 从协议上来看,主要处理`TCP`和`MQTT`协议。主要解决的问题:
-
-
-
- - 架构:策略和控制,缺少统一的设备管理、安全认证、权限控制、规则引擎
- - 设备对接
- - 开发:业务扩展低,重复造轮子
- - 构建
- - 测试
- - 集成
- - 部署
- - 运行:缺少多数据中心,高可用欠缺,难以承受百万并发
- - 维护:成本高,服务器资源浪费,缺少监控预警
-
-
-
- 解决办法:统一的网关。组成是:
-
-
-
- - `IOT Hub`:对接设备
- - 安全认证
- - 报文解析
- - 设备路由
- - 设备运维
- - 权限控制
- - 数据存储
- - 实时监控
- - 插件管理
- - 规则引擎
- - `IOT`指令下发服务
-
-
-
- 效果表现:
-
- - 架构:策略和控制
-
- - 设备对接:兼容多种协议,海量设备接入
-
- - 开发
-
- - 构建
-
- - 测试
-
- - 集成
-
- - 部署
-
- - 运行:高可用确保`SLA`,安全性、水平扩展
-
- - 维护
-
-
-
- > `SLA`: service level agreement, 关于服务质量
-
-
-
- 技术栈:
-
- - `MQTT`协议:`EMQ X Broker` + `MQTT Client`
- - `TCP`协议:`SuperSocket`,是`TCP`服务器
- - 消息队列:`RabbitMQ`
-
-
-
- 数据流向:
-
- - 设备接入
-
- ```
- → 负载均衡
-
- --MQTT协议
- → EMQ X Broker高可用集群
- → 负载均衡
- → 应用集群
- --TCP协议
- → 应用集群
- ```
-
- - 报文解析
-
- ```
- 设备开放平台报文解析插件
- 自定义报文解析插件(dll程序集和js脚本)
- ```
-
-
-
- - 数据处理
-
- ```
- 规则引擎
- --事件通知插件
- --更新Redis插件
- --自定义插件
- ```
-
- - 消息队列
|