最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

Dubbo實(shí)戰(zhàn)入門(mén)講解-Dubbo框架(上篇)

2021-03-26 15:23 作者:動(dòng)力節(jié)點(diǎn)小王本王  | 我要投稿



dubbo?概述

Apache Dubbo (incubating) |?d?b??| 是一款高性能、輕量級(jí)的開(kāi)源 Java RPC 框架,它提供了三大核心能力:面向接口的遠(yuǎn)程方法調(diào)用,智能容錯(cuò)和負(fù)載均衡,以及服務(wù)自動(dòng)注冊(cè)和發(fā)現(xiàn)。

Dubbo 是一個(gè)分布式服務(wù)框架,致力于提供高性能和透明化的 RPC 遠(yuǎn)程服務(wù)調(diào)用方案、服務(wù)治理方案。

官網(wǎng):http://dubbo.apache.org/zh-cn/

特性:

面向接口代理:調(diào)用接口的方法,在 A 服務(wù)器調(diào)用 B 服務(wù)器的方法,由 dubbo 實(shí)現(xiàn)對(duì) B 的調(diào)用,無(wú)需關(guān)心實(shí)現(xiàn)的細(xì)節(jié),就像MyBatis 訪問(wèn) Dao 的接口,可以操作數(shù)據(jù)庫(kù)一樣。不用關(guān)心 Dao 接口方法的實(shí)現(xiàn)。這樣開(kāi)發(fā)是方便,舒服的。

基本架構(gòu)

  • 服務(wù)提供者Provider:暴露服務(wù)的服務(wù)提供方,服務(wù)提供者在啟動(dòng)時(shí),向注冊(cè)中心注冊(cè)自己提供的服務(wù)。

  • 服務(wù)消費(fèi)者Consumer: 調(diào)用遠(yuǎn)程服務(wù)的服務(wù)消費(fèi)方,服務(wù)消費(fèi)者在啟動(dòng)時(shí),向注冊(cè)中心訂閱自己所需的服務(wù),服務(wù)消費(fèi)者,從提供者地址列表中,基于軟負(fù)載均衡算法,選一臺(tái)提供者進(jìn)行調(diào)用,如果調(diào)用失敗,再選另一臺(tái)調(diào)用。

  • 注冊(cè)中心Registry:注冊(cè)中心返回服務(wù)提供者地址列表給消費(fèi)者,如果有變更,注冊(cè)中心將基于長(zhǎng)連接推送變更數(shù)據(jù)給消費(fèi)者

  • 監(jiān)控中心Monitor:服務(wù)消費(fèi)者和提供者,在內(nèi)存中累計(jì)調(diào)用次數(shù)和調(diào)用時(shí)間,定時(shí)每分鐘發(fā)送一次統(tǒng)計(jì)數(shù)據(jù)到監(jiān)控中心

調(diào)用關(guān)系說(shuō)明:

  • 服務(wù)容器負(fù)責(zé)啟動(dòng),加載,運(yùn)行服務(wù)提供者。

  • 服務(wù)提供者在啟動(dòng)時(shí),向注冊(cè)中心注冊(cè)自己提供的服務(wù)。

  • 服務(wù)消費(fèi)者在啟動(dòng)時(shí),向注冊(cè)中心訂閱自己所需的服務(wù)。

  • 注冊(cè)中心返回服務(wù)提供者地址列表給消費(fèi)者,如果有變更,注冊(cè)中心將基于長(zhǎng)連接推送變更數(shù)據(jù)給消費(fèi)者。

  • 服務(wù)消費(fèi)者,從提供者地址列表中,基于軟負(fù)載均衡算法,選一臺(tái)提供者進(jìn)行調(diào)用,如果調(diào)用失敗,再選另一臺(tái)調(diào)用。

  • 服務(wù)消費(fèi)者和提供者,在內(nèi)存中累計(jì)調(diào)用次數(shù)和調(diào)用時(shí)間,定時(shí)每分鐘發(fā)送一次統(tǒng)計(jì)數(shù)據(jù)到監(jiān)控中心。

dubbo?支持的協(xié)議

支持多種協(xié)議:dubbo?, hessian?,?rmi?,?http,?webservice?,?thrift?,?memcached?,?redis。dubbo?官方推薦使用dubbo?協(xié)議。dubbo?協(xié)議默認(rèn)端口?20880

使用 dubbo 協(xié)議,spring 配置文件加入:

<dubbo:protocol name="dubbo" port="20880" />

電商平臺(tái)需求

某電商平臺(tái)系統(tǒng)需求,用戶瀏覽商品;選擇商品下訂單,訂單系統(tǒng)需要獲取用戶信息中的送貨地址;向支付系統(tǒng)請(qǐng)求完成付款。

直連方式 dubbo

點(diǎn)對(duì)點(diǎn)的直連項(xiàng)目:消費(fèi)者直接訪問(wèn)服務(wù)提供者,沒(méi)有注冊(cè)中心。消費(fèi)者必須指定服務(wù)提供者的訪問(wèn)地址(url)。

消費(fèi)者直接通過(guò) url 地址訪問(wèn)固定的服務(wù)提供者。這個(gè) url 地址是不變的。

實(shí)現(xiàn)目標(biāo)

用戶訪問(wèn) ------>【商品網(wǎng)站服務(wù)】訪問(wèn)-----> 【訂單服務(wù)】

實(shí)現(xiàn)方式

以 JavaSE 為例,服務(wù)提供者,服務(wù)消費(fèi)者都是 JavaSE項(xiàng)目

(1)?創(chuàng)建服務(wù)提供者:訂單服務(wù)

A、 ?java?project

項(xiàng)目名稱:link-orderservice-provider

設(shè)置 version?1.0.0

B maven?pom.xml

在<build> 下的 <plugins>標(biāo)簽中加入 JDK1.8 編譯插件

C、 創(chuàng)建實(shí)類(lèi):Order

D 新建務(wù)OrderService

E、新建接口的實(shí)現(xiàn)類(lèi):OrderServiceImpl

F、創(chuàng)建 dubbo 配置文件

orderservce-provider.xml

G、 測(cè)試文件

H 安裝本地?jar??maven?倉(cāng)庫(kù)

服務(wù)接口中的方法要給消費(fèi)者使用,消費(fèi)者項(xiàng)目需要知道接口名稱和接口中的方法名稱、參數(shù)等。這些信息服務(wù)提供者才知道。需要把接口的 class 文件打包為jar?.

服務(wù)接口項(xiàng)目的類(lèi)文件打包為jar, 安裝到 maven 倉(cāng)庫(kù),倉(cāng)庫(kù)中的提供者 jar 可以被消費(fèi)者使用。

使用 IDEA 的 maven 窗口執(zhí)行 install

(2)?創(chuàng)建服務(wù)消費(fèi)者:商品網(wǎng)站

I、 新建 java project

項(xiàng)目名稱:link-main-web

J、 maven pom.xml

在<build> 下的 <plugins>標(biāo)簽中加入 JDK1.8 編譯插件

K、 創(chuàng)建購(gòu)買(mǎi)接口

L、創(chuàng)建購(gòu)買(mǎi)接口的實(shí)現(xiàn)類(lèi)

M 創(chuàng)?dubbo?配置文件

shop-consume.xml

N、 執(zhí)行費(fèi)

dubbo?服務(wù)化最佳實(shí)踐

分包

建議將服務(wù)接口、服務(wù)模型、服務(wù)異常等均放在公共包中。

粒度

服務(wù)接口盡可能大粒度,每個(gè)服務(wù)方法應(yīng)代表一個(gè)功能,而不是某功能的一個(gè)步驟,服務(wù)接口建議以業(yè)務(wù)場(chǎng)景為單位劃分,并對(duì)相近業(yè)務(wù)做抽象,防止接口數(shù)量爆炸。

不建議使用過(guò)于抽象的通用接口,如:Map query(Map),這樣的接口沒(méi)有明確語(yǔ)義,會(huì)給后期維護(hù)帶來(lái)不便。

版本

每個(gè)接口都應(yīng)定義版本號(hào),區(qū)分同一接口的不同實(shí)現(xiàn),如: <dubbo:service interface="com.xxx.XxxService" version="1.0" />。


如果想深入學(xué)習(xí)Dubbo,UP奉上Dubbo視頻教程,視頻學(xué)習(xí)效果更佳,走過(guò)路過(guò)別忘素質(zhì)三連哦~~


Dubbo實(shí)戰(zhàn)入門(mén)講解-Dubbo框架(上篇)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
兴山县| 边坝县| 东源县| 塔河县| 盐源县| 米林县| 临夏市| 绥德县| 潮州市| 金沙县| 汶川县| 衡南县| 民和| 高邑县| 溧水县| 淮北市| 德江县| 合肥市| 长乐市| 阳曲县| 繁昌县| 屯留县| 镇平县| 苏尼特右旗| 新泰市| 嵩明县| 镇江市| 临沭县| 西贡区| 保靖县| 麟游县| 友谊县| 丹巴县| 诸城市| 江孜县| 巴林左旗| 吉木乃县| 高碑店市| 莎车县| 台北市| 赤城县|