SOA 與微服務架構

SOA (Service-Oriented Architecture,面向服務的架構)是一種面向服務的思維方式,它將應用程序的不同功能(服務)通過服務之間定義良好的接口和契約聯繫起來。SOA 核心思想是服務是一種可重複的業務,將其經過標準封裝達到複用的目的。SOA 可以允許各種不同的技術來表達 SOA 的架構理念,而業界比較流行的實現是 WebService,其中 WebService 採用 HTTP 協議傳輸數據,採用 XML 格式封裝數據。微服務架構和 SOA 的思想沒有太大的差別,從實現的方式而言,微服務架構強調實現的輕量化,做到服務粒度更細。這裏,微服務的“微”指的並不是服務,而實際上是應用粒度。爲了更好地識別 SOA 與微服務架構之間的區別,我們來做一個橫向對比。

方面 SOA 微服務架構
應用粒度 多個系統整合成一個服務,粒度大 一個系統拆分成多個服務,粒度小
服務架構 企業服務總線(ESB),集中式架構 服務自治,鬆散式架構
服務規模 服務規模較小 服務規模膨脹
服務部署 單體架構,業務耦合 功能獨立,獨立部署

總結下,微服務架構可以理解成 SOA 的升級版,強調實現的輕量化,做到服務粒度更細。隨着敏捷開發、持續交付、虛擬化技術、DevOps 理論的實踐,微服務架構越來越被重視與應用。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章