1、簡介 SOA(Service Oriented Architecture)“面向服務的架構”:他是一種設計方法,其中包含多個服務, 服務之間通過相互依賴最終提供一系列的功能。一個服務 通常以獨立的形式存在與操作系統進程中。各個服務之間 通過網路調用。 2、和微服務對比 微服務架構其實和 SOA ...
1、簡介
SOA(Service Oriented Architecture)“面向服務的架構”:他是一種設計方法,其中包含多個服務, 服務之間通過相互依賴最終提供一系列的功能。一個服務 通常以獨立的形式存在與操作系統進程中。各個服務之間 通過網路調用。
2、和微服務對比
微服務架構其實和 SOA 架構類似,微服務是在 SOA 上做的升華,微服務架構強調的一個重點是“業務需要徹底的組件化和服務化”,原有的單個業務系統會拆分為多個可以獨立開發、設計、運行的小應用。這些小應用之間通過服務完成交互和集成。
微服務是SOA發展出來的產物,它是一種比較現代化的細粒度的SOA實現方式
微服務架構 = 80%的SOA服務架構思想 + 100%的組件化架構思想 + 80%的領域建模思想
3、細節
SOA解決多服務凌亂問題,SOA架構解決數據服務的複雜程度,同時SOA又有一個名字,叫做服務治理。
(1)所有的團隊都要以服務介面的方式,提供數據和各種功能。
(2)團隊之間必須通過介面來通信。
(3)不允許任何其他形式的互操作:不允許直接鏈接,不允許直接讀其他團隊的數據,不允許共用記憶體,不允許任何形式的後門。唯一許可的通信方式,就是通過網路調用服務。
(4)具體的實現技術不做規定,HTTP、Corba、PubSub、自定義協議皆可。
(5)所有的服務介面,必須從一開始就以可以公開作為設計導向,沒有例外。這就是說,在設計介面的時候,就預設這個介面可以對外部人員開放