《2018年物聯網平臺的反應式設計.pdf》由會員分享,可在線閱讀,更多相關《2018年物聯網平臺的反應式設計.pdf(18頁珍藏版)》請在三個皮匠報告上搜索。
1、?CONTENTS01什么是物聯網平臺02為什么需要反應式架構03我們做了什么什么是物聯網平臺什么是物聯網平臺Sensor/ActuatorPlatformApplicationNetwork物聯網平臺的構成Message HubDevice ShadowRules EngineDeveloper InterfaceSecurityDevicesMessage HubDevice ShadowRules EngineSecurity&IdentityMessage QueueStorageRESTFul APIIoT Applications單體的邏輯架構DevicesIoT Applicat
2、ionsLoad BalanceNginxWeb ConsoleMySQLMongoDB ReplicaRedis ClusterEMQ Cluster IoT PaaS Service Cluster EMQ Node1EMQ Node2EMQ Node3EMQ NodeN.Node1Node2Node3Node4NodeN.MQTT ClientDevice ManagementDevice ShadowRules EngineTenant&UserCertificate為什么需要反應式架構設備影子業務說明1.設備上報狀態2.將上報狀態持久化到數據庫3.應用查詢上報的狀態4.應用設置期望的
3、狀態6.期望狀態和上報狀態的 差異(delta)同步至設備7.設備上報新的狀態8.將新的上報狀態持久化到數據庫5.將期望狀態持久化到數據庫 “state”:“desired”:,“reported”:“color”:“GREEN”,“state”:“ON”,“version”:10 設備影子業務說明1.設備上報狀態2.將上報狀態持久化到數據庫3.應用查詢上報的狀態4.應用設置期望的狀態6.期望狀態和上報狀態的 差異(delta)同步至設備7.設備上報新的狀態8.將新的上報狀態持久化到數據庫5.將期望狀態持久化到數據庫 “state”:“desired”:“color”:“RED”,“repor
4、ted”:“color”:“GREEN”,“state”:“ON”,“delta”:“color”:“RED”,“version”:11 設備影子業務說明1.設備上報狀態2.將上報狀態持久化到數據庫3.應用查詢上報的狀態4.應用設置期望的狀態6.期望狀態和上報狀態的 差異(delta)同步至設備7.設備上報新的狀態8.將新的上報狀態持久化到數據庫5.將期望狀態持久化到數據庫 “state”:“desired”:“color”:“RED”,“reported”:“color”:“RED”,“state”:“ON”,“version”:12 設備影子處理邏輯DevicesMongoDB Repli
5、ca Redis Cluster EMQ NodeNodeX IoT ApplicationsFindShadowSetDesiredSaveShadowCalcDeltaUpdateDeltaSyncDeltaversion“$DeviceName_delta”:“node”:“NodeX”,“delta”:NodeY FindShadowSetDesiredSaveShadowCalcDeltaUpdateDeltaSyncDeltaWeb Console問題及應對之道靈活性彈性資源競爭每次局部業務更新都需要重新部署整個集群局部業務性能瓶頸,彈性擴容所有業務加鎖處理資源競爭,增加性能消耗微
6、服務事件驅動我們做了什么EVENT STORMINGEVENT STORMING核心通用支撐DeltaSyncService 事件驅動DevicesMongoDB Replica EMQ NodeNodeX IoT ApplicationsFindShadowSetDesiredSaveShadowCalcDeltaSendDeltaEventSyncDeltaRedis Cluster“$DeviceName_delta”:“delta”:新的邏輯架構DevicesIoT ApplicationsLoad BalanceNginxWeb ConsoleEMQ Cluster IoT PaaS EMQ Node1EMQ Node2EMQ Node3EMQ NodeN.Device ManagementRules EngineUserSecurityKafka ClusterDevice ShadowTHANK YOU