構建dubbo分散式平臺-dubbo簡介
1. Dubbo是什麼?
Dubbo是一個分散式服務框架,致力於提供高效能和透明化的RPC遠端服務呼叫方案,以及SOA服務治理方案。簡單的說,dubbo就是個服務框架,如果沒有分散式的需求,其實是不需要用的,只有在分散式的時候,才有dubbo這樣的分散式服務框架的需求,並且本質上是個服務呼叫,說白了就是個遠端服務呼叫的分散式框架(告別Web Service模式中的WSDL,以服務者與消費者的方式在dubbo上註冊)。
其核心部分包含:
1. 遠端通訊: 提供對多種基於長連線的NIO框架抽象封裝,包括多種執行緒模型,序列化,以及“請求-響應”模式的資訊交換方式。
2. 叢集容錯: 提供基於介面方法的透明遠端過程呼叫,包括多協議支援,以及軟負載均衡,失敗容錯,地址路由,動態配置等叢集支援。
3. 自動發現: 基於註冊中心目錄服務,使服務消費方能動態的查詢服務提供方,使地址透明,使服務提供方可以平滑增加或減少機器。
2. dubbo能做什麼?
1.透明化的遠端方法呼叫,就像呼叫本地方法一樣呼叫遠端方法,只需簡單配置,沒有任何API侵入。
2.軟負載均衡及容錯機制,可在內網替代F5等硬體負載均衡器,降低成本,減少單點。
3. 服務自動註冊與發現,不再需要寫死服務提供方地址,註冊中心基於介面名查詢服務提供者的IP地址,並且能夠平滑新增或刪除服務提供者。
Dubbo採用全Spring配置方式,透明化接入應用,對應用沒有任何API侵入,只需用Spring載入Dubbo的配置即可,Dubbo基於Spring的Schema擴充套件進行載入。
3. dubbo的架構
dubbo架構圖如下:
節點角色說明:
Provider: 暴露服務的服務提供方。
Consumer: 呼叫遠端服務的服務消費方。
Registry: 服務註冊與發現的註冊中心。
Monitor: 統計服務的呼叫次調和呼叫時間的監控中心。
Container: 服務執行容器。
呼叫關係說明:
0 服務容器負責啟動,載入,執行服務提供者。
1. 服務提供者在啟動時,向註冊中心註冊自己提供的服務。
2. 服務消費者在啟動時,向註冊中心訂閱自己所需的服務。
3. 註冊中心返回服務提供者地址列表給消費者,如果有變更,註冊中心將基於長連線推送變更資料給消費者。
4. 服務消費者,從提供者地址列表中,基於軟負載均衡演算法,選一臺提供者進行呼叫,如果呼叫失敗,再選另一臺呼叫。
5. 服務消費者和提供者,在記憶體中累計呼叫次數和呼叫時間,定時每分鐘傳送一次統計資料到監控中心。
dubbo的容錯性顯而易見,效能方面還沒有還得及測,我們系統某頁面需要掉5次介面,本來想建議做個快取,但業務關係不能採納,還需要研究下dubbo的效能調優問題
4. dubbo使用方法
Dubbo採用全Spring配置方式,透明化接入應用,對應用沒有任何API侵入,只需用Spring載入Dubbo的配置即可,Dubbo基於Spring的Schema擴充套件進行載入。如果不想使用Spring配置,而希望透過API的方式進行呼叫(不推薦),後面的章節中我們會逐步剖析dubbo的使用!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31539957/viewspace-2168604/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 構建dubbo分散式平臺-maven構建根專案分散式Maven
- 構建springmvc+dubbo分散式平臺-dubbo管控檯安裝SpringMVC分散式
- 構建dubbo分散式平臺-window安裝zookeeper註冊中心分散式
- 構建dubbo分散式平臺-maven模組規劃和平臺功能導圖分散式Maven
- 構建dubbo分散式平臺-maven構建ant-framework核心程式碼Base封裝分散式MavenFramework封裝
- 構建springmvc+myabtis+dubbo分散式平臺-zookeeper註冊中心安裝SpringMVC分散式
- 構建dubbo分散式平臺-maven構建ant-framework框架的pom.xml檔案配置分散式MavenFramework框架XML
- Dubbo 簡介
- [分散式][Dubbo]Dubbo常見問題分散式
- 基於 dubbo 的分散式架構分散式架構
- 分散式|Dubbo架構設計詳解分散式架構
- 分散式框架Dubbo入門分散式框架
- [分散式]--Dubbo分散式服務框架-服務治理分散式框架
- 2、Spring Cloud和dubbo簡介SpringCloud
- JEESZ架構、分散式服務:Dubbo+Zookeeper+Proxy+Restful架構分散式REST
- 阿里分散式服務框架Dubbo的架構總結阿里分散式框架架構
- 探索分散式服務框架Dubbo3:為何選擇Dubbo分散式框架
- dubbo-admin平臺的搭建
- 分散式服務Dubbo的前世今生分散式
- Dubbo介紹
- Dubbo+Zookeeper(二)Dubbo架構架構
- 使用SpringBoot+Dubbo搭建一個簡單的分散式服務Spring Boot分散式
- dubbo+zookeeper+springboot構建服務Spring Boot
- 本機搭建Dubbo管理平臺 dubboadmin
- Dubbo+zookeeper實現分散式服務框架分散式框架
- 百度DisConf-分散式配置管理平臺-簡介分散式
- 10分鐘搞定Spring Boot + Dubbo + Dubbo admin UI一整套分散式解決方案Spring BootUI分散式
- SpringBoot開發案例之整合Dubbo分散式服務Spring Boot分散式
- ZooKeeper分散式專題與Dubbo微服務入門分散式微服務
- Spring Cloud Alibaba系列之分散式服務元件DubboSpringCloud分散式元件
- spring cloud構建網際網路分散式微服務雲平臺-SpringCloud整合專案簡介SpringCloud分散式微服務GC
- Dubbo 整合 Pinpoint 做分散式服務請求跟蹤分散式
- 分散式事務 TCC-Transaction 原始碼分析 —— Dubbo 支援分散式原始碼
- Dubbo底層原理分析和分散式實際應用分散式
- Dubbo 分散式事務一致性實現分散式
- 基於 Django 的 Dubbo 介面測試工具平臺Django
- springcloud微服務分散式雲架構簡介SpringGCCloud微服務分散式架構
- Dubbo學習筆記(二) Dubbo 控制後臺的安裝筆記