天天看點

分布式RPC實踐--Dubbo基礎篇簡介架構

簡介

    Dubbo是阿裡巴巴開源的一個高性能的分布式RPC架構,整個架構的核心原理來源于生産者與消費者的運作模型;架構的核心分4大部分:

1. 服務注冊中心

    注冊中心主要用于儲存生産者消費者資訊;生産者将自己的服務儲存在注冊中心,消費者通過注冊中心尋找可用的生産者。

2. 服務提供者(生産者)

    服務提供者,傳統的軟體架構中的Service、Dao層;主要實作種類多樣、多元化的業務需求,并通過注冊中心提供服務接口給其他系統內建。

3. 服務消費者(消費者)

    服務消費者,傳統軟體架構中的Controller、Service層;作為Controller,則主要是接參、校驗,響應結果;作為Service則是整合其他微服務實作自己的多元化業務。

4. 服務監控中心

    監控中心主要用于運維;可視化的界面直覺的了解各個微服務的情況。

架構

分布式RPC實踐--Dubbo基礎篇簡介架構

節點角色說明

節點 角色說明

Provider

暴露服務的服務提供方

Consumer

調用遠端服務的服務消費方

Registry

服務注冊與發現的注冊中心

Monitor

統計服務的調用次數和調用時間的監控中心

Container

服務運作容器

調用關系說明

  1. 服務容器負責啟動,加載,運作服務提供者。
  2. 服務提供者在啟動時,向注冊中心注冊自己提供的服務。
  3. 服務消費者在啟動時,向注冊中心訂閱自己所需的服務。
  4. 注冊中心傳回服務提供者位址清單給消費者,如果有變更,注冊中心将基于長連接配接推送變更資料給消費者。
  5. 服務消費者,從提供者位址清單中,基于軟負載均衡算法,選一台提供者進行調用,如果調用失敗,再選另一台調用。
  6. 服務消費者和提供者,在記憶體中累計調用次數和調用時間,定時每分鐘發送一次統計資料到監控中心。

版權聲明:本文為CSDN部落客「weixin_34049032」的原創文章,遵循CC 4.0 BY-SA版權協定,轉載請附上原文出處連結及本聲明。

原文連結:https://blog.csdn.net/weixin_34049032/article/details/92064325