1. 程式人生 > >dubbo入門學習 三 dubbo簡介

dubbo入門學習 三 dubbo簡介

分享 服務 try summer 構圖 單獨 提供者 調用 技術

http://dubbo.apache.org/zh-cn/docs/user/references/protocol/dubbo.html

Dubbo簡介

1. Dubbo:一個分布式、高性能、透明化的RPC服務框架

2. 作用:提供服務自動註冊、自動發現等高效服務治理方案.

3. Dubbo架構圖

技術分享圖片

  3.1 Provider :提供者,服務發布方.

  3.2 Consumer:消費者, 調用服務方

  3.3 Container:Dubbo容器.依賴於Spring容器.

  3.4 Registry: 註冊中心.當Container啟動時把所有可以提供的服務列表上Registry中進行註冊.

    3.4.1 作用:告訴Consumer提供了什麽服務和服務方在哪裏.

  3.5 Monitor:監聽器

  3.6 虛線都是異步訪問,實線都是同步訪問

  3.7 藍色虛線:在啟動時完成的功能

  3.8 紅色虛線(實線)都是程序運行過程中執行的功能

  3.9 所有的角色都是可以在單獨的服務器上.所以必須遵守特定的協議.

4、運行原理

4.0 啟動容器,相當於在啟動Dubbo的Provider

4.1 啟動後會去註冊中心進行註冊.註冊所有可以提供的服務列表

4.2 在Consumer啟動後會去Registry中獲取服務列表和Provider的地址.進行訂閱.

4.3 當Provider有修改後,註冊中心會把消息推送給Consummer

4.3.1 使用了觀察者設計模式(又叫發布/訂閱設計模式)

4.4 根據獲取到的Provider地址,真實調用Provider中功能.

  4.4.1 在Consumer方使用了代理設計模式.創建一個Provider方類的一個代理對象.通過代理對象獲取Provider中真實功能,起到保護Provider真實功能的作用.

4.5 Consumer和Provider每隔1分鐘向Monitor發送統計信息,統計信息包含,訪問次數,頻率等

dubbo入門學習 三 dubbo簡介