Alibaba 開源框架dubbo簡介

2021-08-07 22:44:03 字數 1785 閱讀 6192

隨著網際網路的發展,**應用的規模不斷的擴大,常規的垂直架構已無法應對,分布式框架以及流動計算架構應運而生,亟需乙個治理系統確保架構有條不紊的演進。

垂直應用架構

分布式計算架構

流動計算架構

節點角色說明

-provider:暴露服務的服務方提供方

-consumer:呼叫遠端服務的服務消費方

-registry:服務註冊與發現的註冊中心

-monitor:統計服務的呼叫次數和呼叫時間的監控中心

-container:服務執行容器

呼叫關係說明:

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

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

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

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

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

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

dubbo採用全spring配置方式,透明化接入應用,對應用沒有任何api侵入,只需用spring載入dubbo的配置即可,dubbo基於spring的schema擴充套件進行載入。

單一工程中spring的配置

class="com.***.***serviceimpl" />

id="***action"

class="com.***.***action">

name="***service"

ref="***service" />

在本地服務的基礎上,只需做簡單配置,即可完成遠端化:

將上面的local.xml配置拆分成兩份,將服務定義部分放在服務提供方remote-provider.xml,將服務引用部分放在服務消費方remote-consumer.xml。

並在提供方增加暴露服務配置,在消費方增加引用服務配置。

發布服務:

id="***service"

class="com.***.***serviceimpl" />

inte***ce="com.***.***service"

ref="***service" />呼叫服務:

id="***service"

inte***ce="com.***.***service" />

id="***action"

class="com.***.***action">

name="***service"

ref="***service" />

bean>

GoFramework框架簡介(四)dubbo篇

框架中dubbo配置說明 provider端配置如下 重要屬性說明 屬性說明 dubbo.host 可以控制dubbo訪問的網路許可權,設定為空則以內網位址發布服務 dubbo.port dubbo服務的埠號 dubbo.group dubbo組名,只有同組的服務才可相互呼叫 dubbo.timeo...

alibaba遠端呼叫框架dubbo原理

alibaba有好幾個分布式框架,主要有 進行遠端呼叫 類似於rmi的這種遠端呼叫 的 dubbo hsf jms訊息服務 napoli notify kv資料庫 tair 等。這個框架 工具 產品在實現的時候,都考慮到了容災,擴充套件,負載均衡,於是出現乙個配置中心 configserver 的東...

alibaba遠端呼叫框架dubbo原理

alibaba有好幾個分布式框架,主要有 進行遠端呼叫 類似於rmi的這種遠端呼叫 的 dubbo hsf jms訊息服務 napoli notify kv資料庫 tair 等。這個框架 工具 產品在實現的時候,都考慮到了容災,擴充套件,負載均衡,於是出現乙個配置中心 configserver 的東...