dubbo是阿里開源的乙個soa服務治理框架,從目前來看把它稱作是乙個rcp遠端呼叫框架更為貼切。單從rpc框架來說,功能較完善,支援多種傳輸和序列化方案。其核心功能自然就是遠端呼叫。
dubbo架構圖示
dubbo執行流程:
provider(提供者)繫結指定埠並啟動服務
指供者連線註冊中心,併發本機ip、埠、應用資訊和提供服務資訊傳送至註冊中心儲存
consumer(消費者),連線註冊中心 ,並傳送應用資訊、所求服務資訊至註冊中心
註冊中心根據 消費 者所求服務資訊匹配對應的提供者列表傳送至consumer 應用快取。
consumer 在發起遠端呼叫時基於快取的消費者列表擇其一發起呼叫。
provider 狀態變更會實時通知註冊中心、在由註冊中心實時推送至consumer
設計的意義:
consumer 與provider 解偶,雙方都可以橫向增減節點數。
註冊中心對本身可做對等集群,可動態增減節點,並且任意一台宕掉後,將自動切換到另一台
去中心化,雙方不直接依懶註冊中心,即使註冊中心全部宕機短時間內也不會影響服務的呼叫
服務提供者無狀態,任意一台宕掉後,不影響使用
最基本的是配置兩個xml檔案,乙個服務於consumer(消費者);乙個服務於provider(提供者)。
提供端:---------------------------
<?xml version="1.0" encoding="utf-8"?>
消費端:--------------------
<?xml version="1.0" encoding="utf-8"?>
配置詳解
引數說明:
標籤屬性
描述必填
name
應用名稱
是registry
protocol
註冊中心協議
是address
註冊中心位址
是provider
threadpool
執行緒模型fixed/cache
否threads
否service
inte***ce
是ref
是group
否version
和消費端一致才能匹配呼叫
否timeout
重試次數,是給消費端使用的(沒有配的情況下)
否retries
重試次數,(同上)
否consumer
timeout
是retries
是referenceid否
inte***ce
否version
否check
否retries
重試次數
否
阿里架構之旅(一) Dubbo初識
最近在做專案中用的是阿里的框架dubbo zookeeper,可是並不知道什麼是dubbo,什麼是zookeeper,這一系列的問題,引導者我們去不斷的探索。今天我們來看看阿里的分布式服務架構 dubbo。dubbo是乙個分布式服務框架,致力於提供高效能和透明化的rpc遠端服務呼叫方案,以及soa服...
阿里架構之旅(一) Dubbo初識
最近在做專案中用的是阿里的框架dubbo zookeeper,可是並不知道什麼是dubbo,什麼是zookeeper,這一系列的問題,引導者我們去不斷的探索。今天我們來看看阿里的分布式服務架構 dubbo。dubbo是乙個分布式服務框架,致力於提供高效能和透明化的rpc遠端服務呼叫方案,以及soa服...
Dubbo常用配置(架構)
公司採用了dubbo作為分布式應用,將多項業務拆分。提供方 消費方 官方文件是這樣寫的,但是我們一般不採用這種方式,我們可以在xml檔案裡配掃瞄包,這樣可以清晰看到dubbo提供方或消費方介面。提供方只訂閱 消費者只註冊不訂閱 如果有兩個映象環境,兩個註冊中心,有乙個服務只在其中乙個註冊中心有部署,...