Dubbo概述
1、什麼是Dubbo
Dubbo是一個分佈式框架,以及SOA治理方案。其主要功能包括:高性能DIO通信及多協議集成,服務動態尋址與路由,軟負載均衡與容錯,依賴分析與降級等。它有5個節點,分別是Provider、Consumer、Registry、Monitor、Container。
其中Prvider是服務提供者,Consumer是服務消費者;Registry是服務進行註冊和被發現的註冊中心;Monitor是統計服務的調用次數和調用時間的監控中心;Container是服務運行容器。
2、調用關係
他們之間調用的關係是:Container負責啓動,加載而後運行Provider。Provider在啓動時會向註冊中心註冊本身提供的服務,Consumer在啓動時會向Registry訂閱本身所需服務,此時Registry會返回Provider地址列表給Consumer。若是地址有變動,Registry會基於長鏈接推送變動數據Consumer。Consumer會基於軟負載均衡算法選一臺提供者進行調用,若是調用失敗,則在選一臺。Provider和Consumer在內存中累計調用次數和調用時間,定時每分鐘發送一次統計數據到Monitor。
3、Dubbo的四個特色
Dubbo具備四個特色,分別是連通性、健壯性、伸縮性、以及向將來架構的升級性。
-
Dubbo具備四個特色,分別是連通性、健壯性、伸縮性、以及向將來架構的升級性。
-
健壯性:說明更具備穩定性,好比說註冊中心對等集羣中的任意一臺墮掉後,將自動切換到另外一臺,就算註冊中心所有墮掉,服務者和消費者任能夠經過本地緩存進行通信;
-
伸縮性:就是能夠經過增長機器部署實例進行添加新的註冊中心和服務提供者;
-
升級性:使文檔中提到的對將來架構的設想,比起目前框架它的特色是能夠實現自動部署服務的本地代理以及能夠經過訪問來自動增減服務提供者。
4、Dubbo框架
節點角色說明
節點 角色說明
Provider 暴露服務的服務提供方
Consumer 調用遠程服務的服務消費方
Registry 服務註冊與發現的註冊中心
Monitor 統計服務的調用次數和調用時間的監控中心
Container 服務運行容器
5、Dubbo調用關係說明
-
服務容器負責啓動,加載,運行服務提供者
-
服務提供者在啓動時,向註冊中心註冊本身提供的服務
-
服務消費者在啓動時,向註冊中心訂閱本身所需的服務
-
註冊中心返回服務提供者地址列表給消費者,若是有變動,註冊中心將基於長鏈接推送變動數據給消費者,
-
服務消費者,從提供者地址列表中,基於軟負載均衡算法,選一臺提供者進行調用,若是調用失敗,再選另外一臺調用。
-
服務消費者和提供者,在內存中累計調用次數和調用時間,定時每分鐘發送一次統計數據到提供中心。
歡迎關注本站公眾號,獲取更多信息