中dubbo所需要的依赖_Dubbo介绍、dubbo架构图、dubbo运行和执行流程、dubbo支持的协议以及支持的注册中心...
生活随笔
收集整理的這篇文章主要介紹了
中dubbo所需要的依赖_Dubbo介绍、dubbo架构图、dubbo运行和执行流程、dubbo支持的协议以及支持的注册中心...
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
第67次(Dubbo)
學習主題:Dubbo
學習目標:
1. Dubbo介紹
1.1 什么是Dubbo?
Dubbo 是阿里巴巴公司開源的一個高性能優(yōu)秀的服務框架, 使得應用可通過高性能的 RPC 實現(xiàn)服務的輸出和輸入功能,可以和 Spring 框架無縫集成。 Dubbo 框架,是基于容器 運行的.。容器是 Spring。1.2 什么是單體架構?
單體架構也稱之為單體系統(tǒng)或者是單體應用。 就是一種把系統(tǒng)中所有的功能、模塊耦合 在一個應用中的架構方式。優(yōu)點:項目易于管理、部署簡單。缺點:測試成本高、可伸 縮性差、可靠性差、迭代困難、跨語言程度差、團隊協(xié)作難1.3 什么是SOA架構?
面向服務的架構(SOA)是一個組件模型,它將應用程序拆分成不同功能單元(稱為服務) 通過這些服務之間定義良好的接口和契約聯(lián)系起來。 接口是采用中立的方式進行定義的, 它應該獨立于實現(xiàn)服務的硬件平臺、操作系統(tǒng)和編程語言。 這使得構建在各種各樣的系統(tǒng)中 的服務可以以一種統(tǒng)一和通用的方式進行交互。1.4 什么是RPC遠程過程調用?
遠程過程調用協(xié)議,它是一種通過網(wǎng)絡從遠程計算機程序上請求服務,而不需要了解底層網(wǎng)絡技術的協(xié)議。 RPC 協(xié)議假定某些傳輸協(xié)議的存在,如 TCP 或 UDP,為通信程序之間攜帶信息數(shù)據(jù)。 在OSI網(wǎng)絡通信模型中,RPC 跨越了傳輸層和應用層。 RPC使得開發(fā)包括 網(wǎng)絡分布式多程序在內(nèi)的應用程序更加容易。2. Dubbo架構圖講解
2.1 Registry表示什么含義?
注冊中心. 是用于發(fā)布和訂閱服務的一個平臺.用于替代SOA結構體系框架中的ESB服務總線的。2.2 Consumer表示什么含義?
服務的消費者, 就是服務的客戶端. 消費者必須使用 Dubbo 技術開發(fā)部分代碼. 基本上都是配置文件定義.2.3 Provider表示什么含義?
服務的提供者, 就是服務端. 服務端必須使用 Dubbo 技術開發(fā)部分代碼. 以配置文件為主.2.4 Container表示什么含義?
容器. Dubbo 技術的服務端(Provider), 在啟動執(zhí)行的時候, 必須依賴容器才能正常啟動.默認依賴的就是 spring 容器. 且 Dubbo 技術不能脫離 spring 框架.2.5 Monitor表示什么含義?
監(jiān)控中心. 是 Dubbo 提供的一個 jar 工程. 主要功能是監(jiān)控服務端(Provider)和消費端(Consumer)的使用數(shù)據(jù)的.3. Dubbo的運行流程:
3.1 請闡述Dubbo執(zhí)行流程?
0 start: 啟動 Spring 容器時,自動啟動 Dubbo 的 Provider 1 register: Dubbo 的 Provider 在啟動后自動會去注冊中心注冊內(nèi)容.注冊的內(nèi)容包括: 1.1 Provider 的 IP 1.2 Provider 的端口. 1.3 Provider 對外提供的接口列表.哪些方法.哪些接口類 1.4 Dubbo 的版本. 1.5 訪問 Provider 的協(xié)議. 2 subscribe: 訂閱.當 Consumer 啟動時,自動去 Registry 獲取到所已注冊的服務的信息. 3 notify: 通知.當 Provider 的信息發(fā)生變化時, 自動由 Registry 向 Consumer 推送通知. 4 invoke: 調用. Consumer 調用 Provider 中方法 4.1 同步請求.消耗一定性能.但是必須是同步請求,因為需要接收調用方法后的結果. 5 count:次數(shù). 每隔 2 分鐘,provoider 和 consumer 自動向 Monitor 發(fā)送訪問次數(shù).Monitor 進行統(tǒng)計.4. Dubbo支持的協(xié)議
4.1 Dubbo支持的協(xié)議有哪些?
Dubbo協(xié)議 RMI協(xié)議 Hessian協(xié)議4.2 每個協(xié)議的優(yōu)缺點是什么?
1 Dubbo 協(xié)議(官方推薦協(xié)議) 1)優(yōu)點: 采用 NIO 復用單一長連接,并使用線程池并發(fā)處理請求,減少握手和加大并發(fā)效率, 性能較好(推薦使用) 2)缺點: 大文件上傳時,可能出現(xiàn)問題(不使用 Dubbo 文件上傳)2 RMI(Remote Method Invocation)協(xié)議 1) 優(yōu)點: JDK 自帶的能力。可與原生 RMI 互操作,基于 TCP 協(xié)議 2) 缺點: 偶爾連接失敗. 3 Hessian 協(xié)議 1) 優(yōu)點: 可與原生 Hessian 互操作,基于 HTTP 協(xié)議 2) 缺點: 需 hessian.jar 支持,http 短連接的開銷大4.3 官方推薦使用什么協(xié)議?
Dubbo協(xié)議5. Dubbo支持的注冊中心
5.1 Dubbo支持哪些注冊中心?
Zookeeper、Multicast、Redis、Simple5.2 每個注冊中心的優(yōu)缺點是什么?
4.1 Zookeeper(官方推薦) 1) 優(yōu)點: 支持分布式.很多周邊產(chǎn)品. 2) 缺點: 受限于 Zookeeper 軟件的穩(wěn)定性.Zookeeper 專門分布式輔助軟件,穩(wěn)定較優(yōu) 4.2 Multicast 1) 優(yōu)點: 去中心化,不需要單獨安裝軟件. 2) 缺點: 2.2.1 Provider 和 Consumer 和 Registry 不能跨機房(路由) 4.3 Redis 1) 優(yōu)點: 支持集群,性能高 2) 缺點: 要求服務器時間同步.否則可能出現(xiàn)集群失敗問題. 4.4 Simple 1) 優(yōu)點: 標準 RPC 服務.沒有兼容問題 2) 缺點: 不支持集群5.3 官方推薦使用什么技術作為注冊中心?
Zookeeper總結
以上是生活随笔為你收集整理的中dubbo所需要的依赖_Dubbo介绍、dubbo架构图、dubbo运行和执行流程、dubbo支持的协议以及支持的注册中心...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 买二手车怎么办贷款
- 下一篇: 全局异常处理_全局异常处理