欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

分布式服務(wù)治理框架Dubbo-創(chuàng)新互聯(lián)

前言

Dubbo是一個被國內(nèi)很多互聯(lián)網(wǎng)公司廣泛使用的開源分布式服務(wù)治理框架,是一個非常全面的SOA基礎(chǔ)框架,當(dāng)當(dāng)網(wǎng)在Dubbo基礎(chǔ)上新增了一些功能,并將其命名為Dubbox(Dubbo eXtensions)。

成都創(chuàng)新互聯(lián)專注于賓陽企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè),電子商務(wù)商城網(wǎng)站建設(shè)。賓陽網(wǎng)站建設(shè)公司,為賓陽等地區(qū)提供建站服務(wù)。全流程定制網(wǎng)站建設(shè),專業(yè)設(shè)計,全程項目跟蹤,成都創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)

為什么需要Dubbo?

以前所有的業(yè)務(wù)處理,都在一個系統(tǒng)當(dāng)中;

接著,這個大系統(tǒng)按照業(yè)務(wù)領(lǐng)域劃分為N個業(yè)務(wù)系統(tǒng);

各個業(yè)務(wù)系統(tǒng)之間不可避免需要交互,采用什么呢?HTTP的方式?WebService?...

我們將面臨很多URL的管理,服務(wù)之間的調(diào)用鏈,依賴關(guān)系,服務(wù)的負(fù)載均衡、監(jiān)控等等

Dubbo是什么?

Dubbo本質(zhì)上就是一個分布式服務(wù)調(diào)用的東西,高性能透明化的RPC調(diào)用方案 + SOA服務(wù)治理方案。

Dubbo的架構(gòu):

分布式服務(wù)治理框架Dubbo

第一,Dubbo有一個注冊中心Registry的概念,服務(wù)的提供者Provider將服務(wù)注冊到Registry,消費者Consumer需要從Registry中發(fā)現(xiàn)、監(jiān)聽到服務(wù)的變動;

第二,Provider需要運行在Container容器中,另外Dubbo提供Monitor來對服務(wù)的調(diào)用次數(shù)以及調(diào)用時間進(jìn)行監(jiān)控。

第三,常用的Registry有Zookeeper,Redis等;博主將采用Zookeeper作為注冊中心。(可以參考:《分布式利器Zookeeper(一)》)

OK,說了一些理論,咱們快速開始吧!


QuickStart

這里我將為大家演示一個訂單服務(wù)調(diào)用商品服務(wù)的Demo。

商品服務(wù):ProductService

我們先來看看商品服務(wù)的工程結(jié)構(gòu):

分布式服務(wù)治理框架Dubbo

ProductService工程,下面分為2個Module:一個是product-api,一個是product-service。要知道,所謂的發(fā)布服務(wù),就是將接口對外暴露,生產(chǎn)者和消費者都是需要引用接口的,所以在這里接口將在product-api中提供。

分布式服務(wù)治理框架Dubbo

在product-service模塊中依賴product-api并實現(xiàn)接口:

分布式服務(wù)治理框架Dubbo

分布式服務(wù)治理框架Dubbo

注意Product需要實現(xiàn)序列化Serializable接口。

分布式服務(wù)治理框架Dubbo

從XML中你可以發(fā)現(xiàn),我們需要在product-service模塊中依賴dubbo、Zookeeper、Curator。(我這里就不貼XML呢)

每一個服務(wù)都有一個Name,其實也可以指定Owner。

注冊中心采用Zookeeper,客戶端采用Curator框架。

Dubbo其實是支持很多協(xié)議,上述指明了是采用Dubbo協(xié)議,對外的服務(wù)端口是20880。

我們需要發(fā)布服務(wù),就是向Zookeeper注冊,告訴我們對外提供的接口是什么,以及該接口對應(yīng)的服務(wù)實現(xiàn)是什么。

啟動商品服務(wù):

分布式服務(wù)治理框架Dubbo

這種啟動方式到底做了些什么?從哪里讀取的配置文件?啟動又是怎么回事呢?

我們稍微來看一看源碼:

分布式服務(wù)治理框架Dubbo

看SpringContainer如何啟動:

分布式服務(wù)治理框架Dubbo

分布式服務(wù)治理框架Dubbo

OK,到這里,商品服務(wù)已經(jīng)就緒了!

訂單服務(wù):OrderService

先看依賴:

分布式服務(wù)治理框架Dubbo

注意訂單服務(wù)需要依賴product-api。

看dubbo配置:

分布式服務(wù)治理框架Dubbo

消費者啟動:

分布式服務(wù)治理框架Dubbo

消費者運行結(jié)果:

分布式服務(wù)治理框架Dubbo

看Zookeeper:

分布式服務(wù)治理框架Dubbo

在Zookeeper中看得很清楚,接口將以目錄節(jié)點的形式創(chuàng)建,providers下面就是接口協(xié)議,分機器,分協(xié)議,從而可以實現(xiàn)負(fù)載均衡!


dubbo-admin管控臺

如同rocketmq一樣,dubbo也提供給了dubbo-admin.war,直接部署到Tomcat下,并修改下dubbo.properties指定好注冊中心地址即可。

分布式服務(wù)治理框架Dubbo


小結(jié)

透明化的遠(yuǎn)程調(diào)用,如同調(diào)用本地方法一樣,只需要簡單配置,沒有任何API侵入!

我們可以平滑的增加、減少機器,消費者能夠動態(tài)的查找到服務(wù)提供方,使得我們的服務(wù)避免了單點問題,強大的容錯機制以及軟負(fù)載能力(要知道硬件負(fù)載器F5是很貴的)。

dubbo和Spring結(jié)合緊密,透明化的接入應(yīng)用!

一些思考

本篇博客不可能將Dubbo全部的特性、配置都講解完,因此這里提出一些問題,來和大家一起思考學(xué)習(xí):

1.A服務(wù)依賴B服務(wù),如果B服務(wù)沒有啟動或者禁用,A服務(wù)是否能夠啟動?Dubbo是否會替我們做服務(wù)依賴調(diào)用檢查呢?

2.我們是否可以繞開注冊中心,直接調(diào)用呢?

3.考慮這樣一種情況,如果A調(diào)用B,出現(xiàn)了網(wǎng)絡(luò)抖動,調(diào)用異常,這個時候dubbo是否會替我們重試調(diào)用?如果dubbo有重試機制,那么是否意味著存在重復(fù)調(diào)用?如果我們的服務(wù)是一個對數(shù)據(jù)庫的操作,那么這種重試機制是否會造成影響或是問題?我們應(yīng)該如何處理?(好像想起了RocketMQ的一些事情....哈哈)

4.dubbo提供了哪些負(fù)載均衡的機制?可以具體到每一個方法么?

5.服務(wù)的調(diào)用,到了Server端,最后肯定是要走線程池進(jìn)行調(diào)用的,那么我們根據(jù)不同場景可以對線程池進(jìn)行定制么?

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

當(dāng)前名稱:分布式服務(wù)治理框架Dubbo-創(chuàng)新互聯(lián)
路徑分享:http://chinadenli.net/article0/dhsjio.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版網(wǎng)站營銷ChatGPT網(wǎng)頁設(shè)計公司動態(tài)網(wǎng)站網(wǎng)站維護(hù)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管