基于微服务架构对IOT物联感知平台设计
总体架构设计图
- 架构基于分布式微服务设计
- 数据接收层目前暂时支持两种协议TCP(主要用于212国标协议2017版本2005版本和其他私有改动版本)
- 国标212接收程序采用Netty开发服务端 高并发 传输快 稳定
- MQTT borker采用开源EMQX(Emqttd) 选择原因文档完善 社区活跃高 中文文档 支持Qos2,支持集群部署,完整物联网协议支持,MQTT、MQTT-SN、CoAP、LwM2M、WebSocket 或私有协议支持,消息服务器内扩展,支持定制多种认证方式、高效存储消息到后端数据库
IOT物联感知平台概要
- 采用spring cloud微服务形式,以集群分布式方式架构
- 主要采用技术:
2.1 docker或者docker swarm 或者K8S部署
2.2注册中心nacos,配置中心nacos 阿里出品开源文档齐全,社区活跃高Spring集成完善
2.3数据库mysql 有其他限制根据要求替换
2.4缓存redis 使用广泛的非关系型内存数据库,简单快捷
2.5搜索引擎elasticsearch 存储海量数据,对海量数据进行近实时的处理
2.6文件存储minio 分布式对象存储,轻量级
2.7 MQ集群rabbitmq
2.8 MQTT集群emqx
2.9微服务组件网关gateway,熔断降级Hystrix,服务内部调用openFeign,权限spring security,服务链路追踪Skywalking
TCP212数据接收流程图
MQTT数据接收流程图