書名: 深度剖析ApacheDubbo核心技術內幕作者名: 翟陸續本章字數: 755字更新時間: 2020-03-02 16:12:12
第1章 Dubbo基礎
1.1 初識Dubbo
整體來說,一個公司業務系統的演進流程基本上都是從單體應用到多體應用。業務系統為單體應用時,不同業務模塊的相互調用直接在本地JVM進程內就可以完成;而變為多個應用時,相互之間進行通信的方式就不是簡單地進行本地調用了,因為不同業務模塊部署到了不同的JVM進程里,更常見的情況是部署到了不同的機器中,這時候,一個高效、穩定的RPC遠程調用框架就變得非常重要。
Dubbo是阿里巴巴開發的一個開源的高性能的RPC調用框架,是一個致力于提供高性能和透明化的RPC遠程調用服務解決方案。作為阿里巴巴SOA服務化治理方案的核心框架,目前它已從Apache孵化器項目畢業,其前景可謂無限光明。
本節概要介紹使用Dubbo構建的分布式系統架構中各個組件服務的作用以及相互關系,其中各個組件之間的關系如圖1.1所示。
圖1.1是Dubbo的架構圖,其中:

圖1.1
· Provider為服務提供者集群,服務提供者負責暴露提供的服務,并將服務注冊到服務注冊中心。
· Consumer為服務消費者集群,服務消費者通過RPC遠程調用服務提供者提供的服務。
· Registry負責服務注冊與發現。
· Monitor為監控中心,統計服務的調用次數和調用時間。
以上各個組件的調用關系如下:
· 服務提供方在啟動時會將自己提供的服務注冊到服務注冊中心。
· 服務消費方在啟動時會去服務注冊中心訂閱自己需要的服務的地址列表,然后服務注冊中心異步把消費方需要的服務接口的提供者的地址列表返回給服務消費方,服務消費方根據路由規則和設置的負載均衡算法選擇一個服務提供者IP進行調用。
· 監控平臺主要用來統計服務的調用次數和調用耗時,即服務消費者和提供者在內存中累計調用服務的次數和耗時,并每分鐘定時發送一次統計數據到監控中心,監控中心則使用數據繪制圖表來顯示。監控平臺不是分布式系統必需的,但是這些數據有助于系統的運維和調優。服務提供者和消費者可以直接配置監控平臺的地址,也可以通過服務注冊中心獲取。
- Learn Blockchain Programming with JavaScript
- Getting started with Google Guava
- Python程序設計(第3版)
- Java Web及其框架技術
- Windows Presentation Foundation Development Cookbook
- C語言程序設計實踐教程
- The DevOps 2.4 Toolkit
- INSTANT Django 1.5 Application Development Starter
- Webpack實戰:入門、進階與調優
- Java Web從入門到精通(第3版)
- 自學Python:編程基礎、科學計算及數據分析(第2版)
- Java Web從入門到精通(第2版)
- Simulation for Data Science with R
- Microsoft HoloLens By Example
- Koa與Node.js開發實戰