Dubbo學習筆記

應用架構的發展演變:
在這裏插入圖片描述
1、單一應用架構
一個應用將所有功能都部署在一起。
缺點:
擴展不容易,修改代碼需要重新打包,重新部署到服務器上。
協同開發不容易。

2、垂直應用架構
將單一應用拆分成幾個獨立的應用,互不干擾。
優點:容易分工合作、性能擴展
在這裏插入圖片描述
缺點:
1、界面與業務邏輯的實現分離。
2、應用不可能完全獨立,大量的應用之間需要交互。

分佈式服務架構
在這裏插入圖片描述
RPC(Remote Procedure Call Protocol 遠程過程調用),簡單的來說就是一臺服務器可以調用另外一臺服務器的函數和方法,並得到返回結果。
通過RPC,我們可以充分利用非共享內存的多處理器環境(例如通過局域網連接的多臺應用服務器),這樣可以簡便地將你的應用分佈在多臺應用服務器上,應用程序就像運行在一臺服務器上一樣。
流動計算架構
在這裏插入圖片描述
當服務越來越多,容量的評估,小服務資源的浪費等問題逐漸顯現,此時需增加一個調度中心基於訪問壓力實時管理集羣容量,提高集羣利用率。此時,用於提高機器利用率的資源調度和治理中心(SOA) 是關鍵。

Dubbo就是資源調度和治理中心的管理工具

Dubbo簡介
Dubbo 是一個分佈式、高性能、透明化的 RPC 服務框架,提供服務自動註冊、自動發現等高效服務治理方案, 可以和 Spring框架無縫集成。

簡單來說Dubbo是一個
Dubbo的核心功能
Remoting:網絡通信框架,提供對多種NIO框架抽象封裝,包括“同步轉異步”和“請求-響應”模式的信息交換方式。
Cluster:服務框架,提供基於接口方法的透明遠程過程調用,包括多協議支持,以及軟負載均衡,失敗容錯,地址路由,動態配置等集羣支持。
Registry:服務註冊,基於註冊中心目錄服務,使服務消費方能動態的查找服務提供方,使地址透明,使服務提供方可以平滑增加或減少機器。

Dubbo的技術架構
在這裏插入圖片描述
Provider 暴露服務的服務提供方
Consumer 調用遠程服務的服務消費方
Registry 服務註冊與發現的註冊中心
Monitor 統計服務的調用次數和調用時間的監控中心
Container 服務運行容器

服務提供者向註冊中心註冊其提供的服務,服務消費者向註冊中心獲取服務提供者地址列表,同時加上負載均衡的算法選擇服務提供者。在開發中,使用Zookeeper作爲註冊中心,可以把controller層作爲consumer,service層和mapper層作爲provider。

發佈了69 篇原創文章 · 獲贊 4 · 訪問量 2502
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章