1. 程式人生 > >Dubbo簡單介紹

Dubbo簡單介紹

最近正好有時間整理一下工作中用到的一些東西.就從 Dubbo 開始吧

首先你需要了解一下什麼是 SOA 架構, 他是用來做什麼的

       SOA 是 Service-Oriented Architecture 的首字母簡稱,它是一種支援面向服務的架構樣式,它可以根據需求通過網路對鬆散耦合的粗粒度應用元件進行分散式部署、組合和使用。服務層是 SOA 的基礎,可以直接被應用呼叫,從而有效控制系統中與軟體代理互動的人為依賴性。從服務、基於服務開發和服務的結果來看,面向服務是一種思考方式。其實 SOA 架構更多應用於網際網路專案開發。 為什麼網際網路專案會採用 SOA 架構呢?隨著網際網路的發展,網站應用的規模不斷擴大,常規的垂直應用架構已無法應對,分散式服務架構以及流動計算架構勢在必行,迫切需一個治理系統確保架構有條不紊的演進。   

OK 現在我們來講講 Dubbo

DUBBO 是一個分散式服務框架,致力於提供高效能和透明化的 RPC 遠端服務呼叫方案,是阿里巴巴 SOA(Service-Oriented Architecture,SOA,面向服務架構)服務化治理方案的核心框架.

明白了吧, SOA 是一種面向服務的架構樣式, 而 Dubbo 是阿里巴巴 的一個 SOA 型別的框架

接下來看看背景介紹以下擷取至 dubbo-user-book:

背景:

​ 隨著網際網路的發展,網站應用規模不斷擴大,常規的垂直框架已經無法應對,

 

dubbo架構:

Provider: 暴露服務的服務提供方

Consumer: 呼叫遠端服務的服務消費方

Registry: 服務註冊與發現的註冊中心

Monitor: 統計服務的呼叫次數和呼叫事件的監控中心

Container: 服務執行容器

呼叫關係說明:

1.服務容器負責啟動, 載入, 執行服務提供者,

2.服務提供者在啟動時, 向註冊中心註冊自己提供的服務

3, 服務消費者在啟動時, 向註冊中心訂閱自己所需的服務

4.註冊中心返回服務提供者地址列表給消費者, 如果有變更, 註冊中心將基於長連線推送變更資料給消費者

5.服務消費者 ,從提供者地址列表中, 基於軟負載均衡演算法, 選一臺提供者進行呼叫, 如果呼叫失敗, 再選另一臺呼叫

6.服務消費者和提供者, 在記憶體中累計呼叫次數和呼叫時間 , 定時每分鐘傳送一次統計資料到監控中心