Spring Cloud的開源可分布式物聯網(IOT)平臺,用于快速開發、部署物聯設備接入項目,是一整套物聯系統解決方案

物聯網架構


Spring Cloud微服務分布式物聯網平臺前后端分離源碼

模塊劃分,四層架構

  • 驅動層:用于提供標準或者私有協議連接物理設備的 SDK,負責南向設備的數據采集和指令控制,基于 SDK 可實現驅動的快速開發;
  • 數據層:負責設備數據的收集和入庫,并提供數據管理接口服務;
  • 管理層:用于提供微服務注冊中心、設備指令接口、設備注冊與關聯配對、數據管理中心,是所有微服務交互的核心部分,負責各類配置數據的管理,并對外提供接口服務;
  • 應用層(開發中...):用于提供數據開放、任務調度、報警與消息通知、日志管理等,具備對接第三方平臺能力。

Spring Cloud微服務分布式物聯網平臺前后端分離源碼


功能設計,定位目標

  • 可伸縮:水平可伸縮的平臺,構建使用領先的 Spring Cloud 開源技術;
  • 容錯:沒有單點故障弱,集群中的每個節點是相同的;
  • 健壯和高效:單一服務器節點可以處理甚至數百成千上萬的設備根據用例;
  • 可定制:添加新的設備協議,并注冊到服務中心;
  • 跨平臺:使用 Java 環境可異地、分布式多平臺部署;
  • 自主可控:私有云、公有云、邊緣部署;
  • 完善性:設備快速接入、注冊、權限校驗;
  • 安全(開發中...):數據加密傳輸;
  • 多租戶(開發中...):命名空間,多租戶化;
  • 云原生:Kubernetes;
  • 容器化:Docker。


Spring Cloud微服務分布式物聯網平臺前后端分離源碼

后臺運行方式:

啟動 Manager & Data 服務

在 Idea 中依次啟動 dc3-managerdc3-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-managerdc3-data 的時候由于開啟了 ASPECTJ ,所以需要配置
-javaagent:dc3/lib/aspectjweaver-1.9.5.jar

前臺展示圖片

Spring Cloud微服務分布式物聯網平臺前后端分離源碼

前端運行方式:

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

其它物聯網平臺參考頁面

Spring Cloud微服務分布式物聯網平臺前后端分離源碼


先轉發文章,然后關注#大數據java架構師# ,私信“iot”即可免費獲取源碼下載地址

源碼定時更新。