一 需求html
因爲公司每一年都會生產大量設備,這些大量設備由此產生以設備爲生命週期的鏈式信息,相關信息以下:linux
1.1 信息來源web
1)設備自己信息,客觀物理基礎信息(區域,行政區域,設備配件,廠家,型號等等)算法
2)設備銷售信息,銷售訂單,銷售流程,物流等相關信息數據庫
3)客戶信息,相似於crmwindows
4)設備生產環節信息,設備一旦投入實際生產環境將產生大量實時,歷史性數據,實時數據能夠進行加工處理產生一些列邏輯信息,好比正常,故障,報警,錯誤,其餘等等api
5)設備售後信息,設備不是一層不變的,他會出現衰老,故障等等一些列問題,所以須要售後環節支持,所以可產生維保,巡檢,維修,以及相關流程和業務信息服務器
6)全部信息統計分析信息,這是在大量設備出現並投入使用後,不管是生產,銷售,實際使用,售後維保等等均可以產生不一樣的算法進行統計,如聚類,分析,日誌統計等等架構
1.2 功能劃分app
根據不一樣時期不一樣維度,不一樣環境的需求,能夠大體劃分出以設備生命週期進行跟蹤,託管,監控,分析幾大類主要功能,根據這些大功能點劃分到不一樣子系統來實現,因而就有了功能架構
1)基礎數據管理:維護設備已經設備依賴的相關基礎數據管理
2)銷售數據管理:包括客戶,銷售環節訂單,物流,實施,合同相關數據管理
3)實時監控:設備在生產環境中實時產生的數據經過採集單元,採集上報到數據處理服務器,進行數據加工處理,產生邏輯數據,報警,故障分析,以及原始數據持久化,併產生實時消息分發
4)維保管理:維保是專門負責售後設備的巡檢,維修,保養,已經其餘業務流程管理,定時任務管理
5) 統計分析:基於全部的數據進行不一樣類型的數據統計,加工,而後可視化輸出
1.3 平臺架構劃分
平臺架構:分佈式系統架構,主要包括數據庫,應用服務器,客戶端,其中客戶端比較多樣化設計桌面,web,app等,軟件運行環境設計windows,linux
子系統劃分:SSO子系統,基礎數據中心子系統,銷售數據中心子系統,實時監控子系統,維保子系統,統計分析子系統
二 總體架構
對這篇博客有必定參考 :http://www.cnblogs.com/Andon_liu/p/5353488.html
2.1 特色與原則
1)子系統獨立原則,
2) 子系統與子系統獨立且知足交互的特色
3)爲數據庫集羣,服務機器奠基基礎
4) 層次劃分,接口明確
2.2 統一入口
1)統一webapi入口 (webapi網關)
2)統一數據源入口(數據庫代理)
2.3 物理拓撲圖
三 子系統實現
3.1 數據庫代理與集羣架構與實現
數據庫代理負責讀寫分離,負載均衡,備用熱切換,數據隔離,這個目前能夠採用開源代理工具如mycat,amoeba,haproxy等等來實現,讓持久化數據訪問統一入口
3.2 SSO服務設計
參考http://www.cnblogs.com/rjjs/p/7422971.html
3.3 基礎數據中心管理子系統
3.4 實時監控子系統
3.5 維保子系統
四 明確目標,下降陳本,提升效率