本文咱們重點討論如何構建一個有效的服務治理平臺,話很少說,直接切入總體。構建服務治理平臺基於「管理」,「度量」,「管控」三個層面統籌考慮安排。具體來說,又能夠分爲六個層次來考慮問,分別是:服務管理流程體系,服務治理平臺,服務治理核心架構,服務協議規範,服務支撐工具,服務運行環境。六個層面的具體關係以下圖所示:spring
接下來咱們分別來看一下每一個層面的具體內容。架構
01負載均衡
服務治理框架框架
當下不管對於什麼樣類型的服務治理核心框架,不管是開源仍是自建,在功能層面相差不大,但技術實現卻有所差異。但就落地實踐而言,自建難度遠大於依賴現有的開源項目。所以本次重點基於開源項目考慮,構建服務治理核心框架選型考慮主要涉及三個因素:開發人員知識儲備,業務/應用要求,當下行業的技術趨勢。目前來說主要服務治理核心框架的選型有三個:spring-cloud框架,dubbo框架以及service mesh框架。具體框架對比,後續會有詳細分析。工具
02性能
服務協議規範日誌
服務協議規範具體而言細分服務接口,服務集成,服務模板,數據規範四個層面。blog
服務接口考慮接口類型以及與之相關的接口協議,例如http協議,或者rpc協議等。接口
服務集成重點考慮集成過程當中的統一協議,通訊方式。路由
服務模板框架主要說明開發服務須要的統一模板信息,框架信息。
數據規範須要依賴明確的命名規範以及數據請求格式規範,以方便服務治理過程當中的信息處理。
03
服務支撐工具
服務治理的支撐功能能夠劃分爲三個層次:治理支撐服務,功能支撐服務,線下支撐服務。
治理支撐服務包括服務註冊/發現,流量控制,容錯熔斷,服務升級/回滾,鏈路跟蹤,路由分發,超時重試,智能恢復等支撐工具集成。
功能支撐服務包括監控告警,日誌服務,認證鑑權,計量計費,消息服務,負載均衡,持久化服務,網管服務等支撐工具。
線下支撐服務包括DevOps流程支撐服務,運行環境支撐。
04
服務運行環境
當下服務運行環境具體而言,包括物理運行環境,容器運行環境,mesh運行環境。服務治理平臺須要支撐不一樣的運行環境。
05
服務治理門戶
服務治理門戶構建從五個層面考慮,包括數據採集,存儲倉庫,工具聚合,綜合分析,服務門戶。
服務門戶以業務/應用/服務做爲門戶的組織方式,實現分析、管控、統計三維一體控制平臺。
綜合分析依賴處理後服務指標,集成數據,可視化呈現當下服務狀態以及預測某一階段服務狀態。
工具聚合服務支撐工具保證服務生態的完整性,並可以管理、記錄、反饋服務狀態。
存儲倉庫存儲採集的日誌,性能,鏈路等與服務相關的數據。
數據採集是指proxy + agent經過攔截/旁路監測方式獲取鏈路或者服務數據,並可以上報到存儲倉庫。
06
服務管理流程體系
最後服務治理平臺應該構建在必定的服務管理流程體系之下,符合必定的服務管理流程規範。