微服務的去中心化治理

微服務的去中心化治理

 

  隨着主體對客體的相互做用的深刻和認知機能的不斷平衡、認知結構的不斷完善,個體能從自我中心狀態中解除出來,皮亞傑稱之爲去中心化。架構

  當平臺的決策者倡導建設API網關,全部外部服務和內部服務都由統一的API網關進行管理。在項目初期,中心化的API網關統一了全部API的入口,這看起來很規範,但從技術角度來看限制了API的多樣化。隨着業務的發展,API網關開始暴露問題,每一個用戶請求通過機房時只要有服務之間的交互,則都會從API網關進行路由,服務上量之後,因爲內部服務之間的交互都會疊加在API網關的調用上,因此在很大程度上放大了API網關的調用TPS,API網關很快就遇到了性能瓶頸。框架

  上面這個案例是典型的微服務的反模式,微服務倡導去中心化的治理,不推薦每一個微服務都使用相同的標準和技術來開發和使用服務。微服務

在微服務架構下能夠使用C++開發一個服務,來對接Java開發的另一個服務,對於異構系統之間的交互標準,一般能夠使用工具來補償。開發者能夠開發共用的工具,並分享給異構系統的開發者使用,來解決異構系統不一致的問題,例如:Thrift遠程調用框架使用中間語言(IDL)來定義接口,中間語言是獨立於任何語言的,並提供了工具來生成中間語言,以及在中間語言與具體語言之間的代碼轉換。工具

  微服務架構倡導去中心化的服務管理和治理,儘可能不設置中心化的管理服務,最差也須要在中心化的管理服務宕機時有替代方案和設計。在支付平臺服務化建設中,若是第1層SOA服務化採用Dubbo框架進行定製化,若是Dubbo服務化出現了大面積的崩潰,則服務化體系會切換到點對點的hessian遠程調用,這被稱爲服務化降級,降級後點對點的hessian遠程調用時沒有中心化節點,總體上符合微服務的原理。性能

 原文連接spa

相關文章
相關標籤/搜索