一、SOA
英文名稱:Service Oriented Ambiguity
中文名稱:面向服務架構
SOA是一種思想,目的是提供一種設計項目的思路,讓開發時更有效率。
例如原來的分布式項目中,在每個項目都要訪問數據庫,這樣就造成了代碼的冗余:
使用SOA架構后:
- 專門訪問數據庫服務(項目)
-
開發時可以實現數據訪問控制和代碼復用
實現 SOA 架構時,常用服務:
- Dubbo作為服務
- WebService作為服務
- Dubbox作為服務
-
服務方就是 web 項目,調用 web 項目的控制器
-
使用 HttpClient 可以調用其他項目的控制器
-
二、RPC
英文名稱:Remote Procedure Call Protocol
中文名稱:遠程過程調用協議
解釋:客戶端(A)通過互聯網調用遠程服務器,不知道遠程服務器的具體實現,只知道遠程服務器提供了什么功能。