1. 程式人生 > >Dubbo背景和簡介

Dubbo背景和簡介

技術 發展 fff 分布式應用 之間 cto 以及 支付 擴容

Dubbo開始於電商系統,因此在這裏先從電商系統的演變講起。

單一應用框架(ORM)?
當網站流量很小時,只需一個應用,將所有功能如下單支付等都部署在一起,以減少部署節點和成本。?
缺點:單一的系統架構,使得在開發過程中,占用的資源越來越多,而且隨著流量的增加越來越難以維護?

技術分享圖片

垂直應用框架(MVC)?
垂直應用架構解決了單一應用架構所面臨的擴容問題,流量能夠分散到各個子系統當中,且系統的體積可控,一定程度上降低了開發人員之間協同以及維護的成本,提升了開發效率。?
缺點:但是在垂直架構中相同邏輯代碼需要不斷的復制,不能復用。?
技術分享圖片

分布式應用架構(RPC)?
當垂直應用越來越多,應用之間交互不可避免,將核心業務抽取出來,作為獨立的服務,逐漸形成穩定的服務中心?

技術分享圖片

流動計算架構(SOA)?
隨著服務化的進一步發展,服務越來越多,服務之間的調用和依賴關系也越來越復雜,誕生了面向服務的架構體系(SOA),也因此衍生出了一系列相應的技術,如對服務提供、服務調用、連接處理、通信協議、序列化方式、服務發現、服務路由、日誌輸出等行為進行封裝的服務框架

從以上是電商系統的演變可以看出架構演變的過程:?
技術分享圖片

單一應用架構

當網站流量很小時,只需一個應用,將所有功能都部署在一起,以減少部署節點和成本。
此時,用於簡化增刪改查工作量的 數據訪問框架(ORM) 是關鍵。
垂直應用架構

當訪問量逐漸增大,單一應用增加機器帶來的加速度越來越小,將應用拆成互不相幹的幾個應用,以提升效率。

此時,用於加速前端頁面開發的 Web框架(MVC) 是關鍵。
分布式服務架構?
當垂直應用越來越多,應用之間交互不可避免,將核心業務抽取出來,作為獨立的服務,逐漸形成穩定的服務中心,使前端應用能更快速的響應多變的市場需求。
此時,用於提高業務復用及整合的 分布式服務框架(RPC) 是關鍵。
流動計算架構?
當服務越來越多,容量的評估,小服務資源的浪費等問題逐漸顯現,此時需增加一個調度中心基於訪問壓力實時管理集群容量,提高集群利用率。
此時,用於提高機器利用率的 資源調度和治理中心(SOA) 是關鍵。

Dubbo背景和簡介