Dubbo實現分散式架構原理
阿新 • • 發佈:2019-01-07
Dubbo框架是阿里巴巴開發的一款針對soa服務式的分散式框架。隨著專案業務邏輯複雜度的提高,專案併發量的提高,將dao層、service層、web層的所有程式碼集中在一個應用中已經不再適用,因為這樣專案維護起來很不便,代碼冗雜在一起,專案之間的呼叫早已經含糊不清,對搭建叢集節點也存在著制約性,分散式專案架構勢在必行。Dubbo實現分散式框架的重點在於連線服務層和表現層的橋樑,將服務層和表現層隔離開來,這樣以來不僅可提高程式碼的複用性,也使專案的結構更加的清新,更是可以提高併發量。Spring容器能夠很好的管理dubbo框架,容器中只需要配置下相關服務的介面即可,表現層可以根據容器中暴露出的介面訪問相關的
下面是dubbo框架的執行原理圖:
其中Provider為服務提供方,Registry為註冊中心,一般是Zookeeper來管理,接收來自提供方的ip和埠號,統一來管理服務,當cosume來進行查詢呼叫服務時,registry會將服務的id和埠號給cosume,當不存在需要的服務式,將會丟擲異常。Cosume拿到自己需要服務的id和埠號後,直接和provider進行通訊。這樣整個服務框架就由Dubbo來進行統一的治理,而且dubbo分散式框架可配置搭載上萬臺伺服器,對於高併發起到了至關重要的作用。