這是一個用Rust建構的高效能物聯網開發平台,旨在支援多種協定並提供即時資料處理能力。該平台支援MQTT、WebSocket(WS)、TCP和CoAP協議,使其能夠高度靈活地適應各種物聯網應用場景。
Github 倉庫:https://github.com/iot-ecology/rust-iot-platform
如果您喜歡這個項目,請給它一顆星。
主要特點
-
高效能:用 Rust 編寫,利用 Rust 的記憶體安全和並發功能來提供高效的 IoT 解決方案。
-
多協議支援:支援MQTT、WebSocket (WS)、TCP、CoAP協議,滿足廣泛的應用需求。
-
即時資料處理:內建即時資料處理機制,確保快速回應和高效資料傳輸。
-
模組化設計:清晰定義的模組,方便擴充與維護。
架構圖
下面是平台的架構圖,說明了各個模組如何協同工作:
支援的協議
-
MQTT:支援標準MQTT協議,非常適合即時訊息應用。
-
WebSocket (WS):為Web客戶端提供即時雙向通訊支援。
-
TCP:用於裝置到裝置通訊的通用傳輸協定。
-
CoAP:專為低功耗設備設計的協議,適合嵌入式應用。
功能列表
設備管理:輕鬆管理所有設備資料和資訊。設備分組功能可依不同場景將設備分組,提高設備管理效率。
人員管理:提供完善的角色、部門、權限管理功能,確保每個使用者只能在其授權範圍內進行訪問,增強系統安全性。
生命週期管理:涉及設備從生產到交付的整個流程,確保每個階段順利執行,並可追蹤設備的狀態和進度。
協議管理:支援多種常用的物聯網協議,透過細緻的管理和配置,確保設備與平台之間高效、安全的通訊。
資料管理:提供靈活的資料處理和警報配置能力。使用者可根據需要設定各種訊號處理和警報規則,確保系統即時回應。
通知管理:透過飛書、釘釘機器人,平台可以及時發送重要通知和警報,確保管理員能夠快速回應和處理異常情況。
轉送管理:支援資料轉送至各種主流資料庫,確保設備資料有效率的儲存與處理,滿足不同的儲存與查詢需求。
設備管理
-
設備詳細資訊:查看和管理單一設備的詳細信息,包括設備配置、狀態、日誌和使用資料。
-
設備分組:根據功能、位置或其他自訂標準將設備分組,以實現大量操作和集中管理。
人事管理
-
使用者清單:管理平台內的使用者訊息,包括角色分配和存取控制。
-
部門列表:按部門組織用戶,以便更好的管理和權限分配。
-
角色清單:定義不同的角色,為每個角色分配對應的權限,並保證使用者只能存取其角色範圍內的平台功能。
-
資訊列表:管理與使用者、裝置和事件相關的附加信息,提供詳細記錄和搜尋功能。
生命週期管理
-
產品清單:管理物聯網產品的生命週期,包括建立、更新和狀態追蹤。
-
物聯網卡管理:管理物聯網卡的分配、狀態更新和使用情況,確保設備通訊穩定。
-
設備生產管理:追蹤設備生產流程,確保生產進度和品質控制。
-
設備運輸管理:管理設備的運輸、配送和交付狀態,確保及時到達。
協議管理
-
MQTT 協定:
-
MQTT 用戶端管理:設定和管理 MQTT 用戶端,包括裝置連線和訊息傳輸。
-
MQTT 用戶端服務節點管理:管理 MQTT 服務節點,控制客戶端與伺服器之間的連線和訊息路由。
-
HTTP 協定:
-
HTTP 處理器管理:管理 HTTP 請求處理,包括不同的 API 介面和請求類型。
-
HTTP 伺服器管理:設定和管理 HTTP 伺服器以處理來自外部系統的請求。
-
TCP 協定:
-
TCP處理器管理:管理TCP連線和資料流,包括連線池和資料解析。
-
TCP 伺服器管理:設定和管理 TCP 伺服器以接收和傳送設備資料。
-
CoAP協定:
-
CoAP 處理器管理:配置和管理 CoAP 協定的資料處理器,適用於低功耗設備。
-
CoAP伺服器管理:管理CoAP伺服器,支援設備之間的高效通訊。
-
WebSocket 協定:
-
WebSocket 處理器管理:管理 WebSocket 連線處理器以支援即時、雙向通訊。
-
WebSocket伺服器管理:設定WebSocket伺服器,為客戶端提供即時資料傳輸服務。
資料管理
-
訊號管理:管理來自設備或感測器的訊號,包括訊號類型、來源和處理方法。
-
訊號警報配置:設定和管理訊號的警報規則,當訊號超過預定義閾值時觸發警報。
-
計算規則:定義處理和分析設備資料的計算邏輯和規則。
-
計算參數:管理資料處理所需的參數,確保計算過程的準確性。
-
腳本警報:使用腳本自動警報,支援基於腳本邏輯的自訂警報行為。
-
腳本參數:定義和管理腳本中使用的參數,以便在不同條件下靈活調整。
通知管理
-
飛書機器人:透過飛書機器人發送即時通知,支援自訂通知內容和觸發條件。
-
釘釘機器人:整合式釘釘機器人發送訊息和提醒,確保及時溝通。
轉發管理
-
Cassandra:設定資料轉送至Cassandra,實現大規模資料儲存與快速查詢。
-
ClickHouse:將資料轉發到ClickHouse,適合即時資料分析和大規模資料儲存。
-
InfluxDB 2:支援將時序資料轉送到InfluxDB 2,以實現高效率的時序資料查詢和儲存。
-
MongoDB:將資料轉送到MongoDB,支援JSON格式的資料儲存和靈活的查詢。
-
MySQL:將資料轉送到MySQL,適合關聯式資料儲存、管理與查詢。
以上是Rust 物聯網平台的詳細內容。更多資訊請關注PHP中文網其他相關文章!