1. 程式人生 > >什麽是微服務架構?

什麽是微服務架構?

thum 模型 組織架構 文字 構建 很多 完成 松耦合 靈活

本文來自網易雲社區。

微服務架構是解決企業 IT 長期演進的一種方案,適用於叠代很快的系統,10年不變的系統就算了。

  • 什麽是微服務

簡述 Martin Flower 大神的系統闡述:

  1. 微服務是一種架構風格,也是一種服務;
  2. 微服務的顆粒比較小,一個大型復雜軟件應用由多個微服務組成,比如Netflix目前由500多個的微服務組成;
  3. 它采用UNIX設計的哲學,每種服務只做一件事,是一種松耦合的能夠被獨立開發和部署的無狀態化服務(獨立擴展、升級和可替換)。

技術分享圖片

微服務架構示例

采用微服務架構的主要收益:

  1. 效率高:一個微服務基本是一個能獨立發布的應用服務,因此可以作為獨立組件升級、灰度或復用等,對整個大應用的影響也較小,每個服務可以由專門的組織來單獨完成,依賴方只要定好輸入和輸出口即可完全開發,甚至整個團隊的組織架構也會更精簡,因此溝通成本低、效率高。
  2. 靈活性:根據業務的需求,不同的服務可以根據業務特性進行不同的技術選型,是計算密集型還是I/O密集型應用都可以依賴不同的語言編程模型,各團隊可以根據本身的特色獨自運作。
  3. 高可用:服務在壓力較大時,也可以有更多容錯或限流服務。

微服務架構確實有很多吸引人的地方,然而它的引入也是有成本的,它並不是銀彈,使用它會引入更多技術挑戰,比如性能延遲、分布式事務、集成測試、故障診斷等方面,企業需要根據業務的不同的階段進行合理的引入,不能完全為了微服務而“微服務”

* 以上內容摘自:《雲原生應用架構實踐》,本書第5章也會對如何解決微服務技術挑戰提供不同的方案。

  • 怎麽做微服務

微服務,就是系統劃分成非常小的模塊,而且這些模塊都可以通過一種標準的服務接口進行溝通。我們做軟件的,要向人類社會學習。為什麽我們人類社會有這麽發達的文明呢。是因為我們基於人這個最小的單位,設計了標準的語言、文字、貨幣、法律。微服務技術平臺,也需要基於微服務這個基本單元,構建多維度完整的解決方案,讓企業的架構就可以像人類社會一樣持續發展。

完整的解決方案,網易雲認為,應該包括微服務治理、API 網關、容器服務、DevOps、AIOps、和測試服務等 6 個模塊,所以,網易雲輕舟微服務的功能是這樣設計的:

技術分享圖片網易雲輕舟微服務產品功能

原文:什麽是微服務架構?

網易雲新用戶大禮包:https://www.163yun.com/gift

什麽是微服務架構?