《GitHub精选》是我们分享Github中优质项目的栏目,包括技术、学习、实用与各种有趣的内容。本期推荐的是一个基于Spring Cloud的分布式的物联网(IOT)平台——IOT DC3。
DC3是基于Spring Cloud的开源可分布式物联网(IOT)平台,用于快速开发、部署物联设备接入项目,提供一整套物联系统解决方案。
架构设计
模块划分
-
✅驱动层:用于提供标准或者私有协议连接物理设备的 SDK,负责南向设备的数据采集和指令控制,基于 SDK 可实现驱动的快速开发
-
✅数据层:负责设备数据的收集和入库,并提供数据管理接口服务
-
✅管理层:用于提供微服务注册中心、设备指令接口、设备注册与关联配对、数据管理中心,是所有微服务交互的核心部分,负责各类配置数据的管理,并对外提供接口服务
-
☑️应用层:用于提供数据开放、任务调度、报警与消息通知、日志管理等,具备对接第三方平台能力
功能设计
-
✅可伸缩:水平可伸缩的平台,构建使用领先的 Spring Cloud 开源技术
-
✅容错:没有单点故障弱,集群中的每个节点是相同的
-
✅健壮和高效:单一服务器节点可以处理甚至数百成千上万的设备根据用例
-
✅可定制:添加新的设备协议,并注册到服务中心
-
✅跨平台:使用 Java 环境可异地、分布式多平台部署
-
✅自主可控:私有云、公有云、边缘部署
-
✅完善性:设备快速接入、注册、权限校验
-
☑️安全(开发中…):数据加密传输(mqtt 驱动已实现数据加密传输)
-
✅多租户:命名空间,多租户化
-
✅云原生:Kubernetes
-
✅容器化:Docker
项目演示
-
前提:必须保证安装了 docker 和 docker-compose
-
配置要求:至少需要给docker分配:1核 CPU 以及 4G 以上的运行内存
-
端口说明:Demo 仅对外暴露 443 一个端口,且不可修改为其他端口,所以请务必保证 443 端口不被占用,如需特殊化,请使用开发环境启动
1 启动
1git clone https://gitee.com/pnoker/iot-dc3.gitcd iot-dc3/dc3
2#启动
3docker-compose -f docker-compose-demo.yml up -d
4#停止
5docker-compose -f docker-compose-demo.yml down
2 登录
服务启动后,从https://localhost
进入登陆页面
3 新建模板
在“模板”菜单中新增一个模板,例如模版名称为:“Virtual-Profile”,所属驱动选择:“VirturlDriver”
4 驱动配置
在“驱动配置”菜单中新增配置,选择所属模版“Virtual-Profile”
5 新增位号
在“位号”菜单中新增位号,选择所属模版“Virtual-Profile”
6 新增分组
在“分组”菜单中新增位号一个分组
7 新增设备
在“设备”菜单中新增一个设备,择所属模版“Virtual-Profile”,所属分组“Virtual-Group”,新增一个设备,然后“保存”,例如:设备名称为:“Virtual-Device-01”
8 位号配置
在“位号配置”菜单中新增位号配置,选择所属设备“Virtual-Device-01”,所属位号“随机值”,属性“位号”,新增一个位号配置,然后“保存”,例如:位号的属性值为“random”
9 数据
切换至“数据”菜单,数据会30秒周期性地集到平台上来
—END—
开源协议:木兰2.0
项目地址:https://gitee.com/dromara/hutool
原文始发于微信公众号(开源技术专栏):基于Spring Cloud的分布式的物联网(IOT)平台
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/54082.html