Spring Cloud的开源可分布式物联网(IOT)平台,用于快速开发、部署物联设备接入项目,是一整套物联系统解决方案

物联网架构

 

 

模块划分,四层架构

  •  驱动层:用于提供标准或者私有协议连接物理设备的 SDK,负责南向设备的数据采集和指令控制,基于 SDK 可实现驱动的快速开发;
  •  数据层:负责设备数据的收集和入库,并提供数据管理接口服务;
  •  管理层:用于提供微服务注册中心、设备指令接口、设备注册与关联配对、数据管理中心,是所有微服务交互的核心部分,负责各类配置数据的管理,并对外提供接口服务;
  •  应用层(开发中...):用于提供数据开放、任务调度、报警与消息通知、日志管理等,具备对接第三方平台能力。
  •  

 

  •  

功能设计,定位目标

  •  可伸缩:水平可伸缩的平台,构建使用领先的 Spring Cloud 开源技术;
  •  容错:没有单点故障弱,集群中的每个节点是相同的;
  •  健壮和高效:单一服务器节点可以处理甚至数百成千上万的设备根据用例;
  •  可定制:添加新的设备协议,并注册到服务中心;
  •  跨平台:使用 Java 环境可异地、分布式多平台部署;
  •  自主可控:私有云、公有云、边缘部署;
  •  完善性:设备快速接入、注册、权限校验;
  •  安全(开发中...):数据加密传输;
  •  多租户(开发中...):命名空间,多租户化;
  •  云原生:Kubernetes;
  •  容器化:Docker。

 

 

后台运行方式:

启动 Manager & Data 服务

在 Idea 中依次启动 dc3-manager 、 dc3-data

Main函数为位置:

dc3-manager:dc3-center/dc3-manager/src/main/java/com/dc3/center/manager/ManagerApplication.java

dc3-data:dc3-center/dc3-data/src/main/java/com/dc3/center/data/DataApplication.java

注意:在启动 dc3-manager 、 dc3-data 的时候由于开启了 ASPECTJ ,所以需要配置
-javaagent:dc3/lib/aspectjweaver-1.9.5.jar

前台展示图片

 

前端运行方式:

git clone https://github.com/qianfangzheng/iot-dc-client
cd dc3-web

#这步至关重要,请务必使用 cnpm 进行 install
npm install -g cnpm --registry=https://registry.npm.taobao.org
cnpm install

# run
npm run serve

# build 
npm run build

# docker build
cd dc3
docker-compose build

# docker run 
docker-compose up -d

其它物联网平台参考页面