日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

基于Dubbo框架构建分布式服务(三)

發(fā)布時(shí)間:2023/12/9 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 基于Dubbo框架构建分布式服务(三) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

我們將上面開發(fā)的服務(wù)提供方服務(wù),部署到2個(gè)獨(dú)立的節(jié)點(diǎn)上(192.168.14.1和10.10.4.125),然后可以通過Dubbo管理中心查看對(duì)應(yīng)服務(wù)的狀況,如圖所示:

上圖中可以看出,該服務(wù)有兩個(gè)獨(dú)立的節(jié)點(diǎn)可以提供,因?yàn)榕渲玫募耗J綖閒ailover,如果某個(gè)節(jié)點(diǎn)的服務(wù)發(fā)生故障無法使用,則會(huì)自動(dòng)透明地重試另一個(gè)節(jié)點(diǎn)上的服務(wù),這樣就不至于出現(xiàn)拒絕服務(wù)的情況。如果想要查看提供方某個(gè)節(jié)點(diǎn)上的服務(wù)詳情,可以點(diǎn)擊對(duì)應(yīng)的IP:Port鏈接,示例如圖所示:

?

上圖可以看到服務(wù)地址?

dubbo://10.10.4.125:20880/org.shirdrn.dubbo.api.ChatRoomOnlineUserCounterService?actives=100&anyhost=true&application=chatroom-cluster-provider&cluster=failover&dubbo=0.0.1-SNAPSHOT&executes=200&interface=org.shirdrn.dubbo.api.ChatRoomOnlineUserCounterService&loadbalance=random&methods=getMaxOnlineUserCount,queryRoomUserCount&pid=30942&queryRoomUserCount.actives=50&queryRoomUserCount.loadbalance=leastactive&queryRoomUserCount.retries=2&queryRoomUserCount.timeout=500&retries=2&revision=0.0.1-SNAPSHOT&side=provider&timeout=1000×tamp=1427793652814&version=1.0.0

如果我們直接暴露該地址也是可以的,不過這種直連的方式對(duì)服務(wù)消費(fèi)方不是透明的,如果以后IP地址更換,也會(huì)影響調(diào)用方,所以最好是通過注冊(cè)中心來隱蔽服務(wù)地址。同一個(gè)服務(wù)所部署在的多個(gè)節(jié)點(diǎn)上,也就對(duì)應(yīng)對(duì)應(yīng)著多個(gè)服務(wù)地址。另外,也可以對(duì)已經(jīng)發(fā)布的服務(wù)進(jìn)行控制,如修改訪問控制、負(fù)載均衡相關(guān)配置內(nèi)容等,可以通過上圖中“消費(fèi)者”查看服務(wù)消費(fèi)方調(diào)用服務(wù)的情況,如圖所示:

也在管理控制臺(tái)可以對(duì)消費(fèi)方進(jìn)行管理控制。

  • ●Dubbo監(jiān)控中心

Dubbo監(jiān)控中心是以Dubbo服務(wù)的形式發(fā)布到注冊(cè)中心,和普通的服務(wù)時(shí)一樣的。例如,我這里下載了Dubbo自帶的簡(jiǎn)易監(jiān)控中心文件dubbo-monitor-simple-2.5.3-assembly.tar.gz,可以解壓縮以后,修改配置文件~/dubbo-monitor-simple-2.5.3/conf/dubbo.properties的內(nèi)容,如下所示:

?

dubbo.container=log4j,spring,registry,jetty dubbo.application.name=simple-monitor dubbo.application.owner= dubbo.registry.address=zookeeper://zk1:2181?backup=zk2:2181,zk3:2181 dubbo.protocol.port=7070 dubbo.jetty.port=8087 dubbo.jetty.directory=${user.home}/monitor dubbo.charts.directory=${dubbo.jetty.directory}/charts dubbo.statistics.directory=${user.home}/monitor/statistics dubbo.log4j.file=logs/dubbo-monitor-simple.log dubbo.log4j.level=WARN

然后啟動(dòng)簡(jiǎn)易監(jiān)控中心,執(zhí)行如下命令:?

cd ~/dubbo-monitor-simple-2.5.3 bin/start.sh

這里使用了Jetty Web容器,訪問地址?http://10.10.4.130:8087/?就可以查看監(jiān)控中心,Applications選項(xiàng)卡頁(yè)面包含了服務(wù)提供方和消費(fèi)方的基本信息,如圖所示:

上圖主要列出了所有提供方發(fā)布的服務(wù)、消費(fèi)方調(diào)用、服務(wù)依賴關(guān)系等內(nèi)容。

接著,查看Services選項(xiàng)卡頁(yè)面,包含了服務(wù)提供方提供的服務(wù)列表,如圖所示:

點(diǎn)擊上圖中Providers鏈接就能看到服務(wù)提供方的基本信息,包括服務(wù)地址等,如圖所示:

點(diǎn)擊上圖中Consumers鏈接就能看到服務(wù)消費(fèi)方的基本信息,包括服務(wù)地址等,如圖所示:

由于上面是Dubbo自帶的一個(gè)簡(jiǎn)易監(jiān)控中心,可能所展現(xiàn)的內(nèi)容并不能滿足我們的需要,所以可以根據(jù)需要開發(fā)自己的監(jiān)控中心。Dubbo也提供了監(jiān)控中心的擴(kuò)展接口,如果想要實(shí)現(xiàn)自己的監(jiān)控中心,可以實(shí)現(xiàn)接口com.alibaba.dubbo.monitor.MonitorFactory和com.alibaba.dubbo.monitor.Monitor,其中MonitorFactory接口定義如下所示:

?

/** * MonitorFactory. (SPI, Singleton, ThreadSafe) * * @author william.liangf */ @SPI("dubbo") public interface MonitorFactory {/*** Create monitor.* @param url* @return monitor*/@Adaptive("protocol")Monitor getMonitor(URL url);}

?

?

Monitor接口定義如下所示:

Monitor接口定義如下所示:

/** * Monitor. (SPI, Prototype, ThreadSafe) * * @see com.alibaba.dubbo.monitor.MonitorFactory#getMonitor(com.alibaba.dubbo.common.URL) * @author william.liangf */ public interface Monitor extends Node, MonitorService {}?

具體定義內(nèi)容可以查看MonitorService接口,不再累述。

總結(jié)

Dubbo還提供了其他很多高級(jí)特性,如路由規(guī)則、參數(shù)回調(diào)、服務(wù)分組、服務(wù)降級(jí)等等,而且很多特性在給出內(nèi)置實(shí)現(xiàn)的基礎(chǔ)上,還給出了擴(kuò)展的接口,我們可以給出自定義的實(shí)現(xiàn),非常方便而且強(qiáng)大。更多可以參考Dubbo官網(wǎng)用戶手冊(cè)和開發(fā)人員手冊(cè)。?

附錄:Dubbo使用Maven構(gòu)建依賴配置?

<properties><spring.version>3.2.8.RELEASE</spring.version><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding></properties><dependencies><dependency><groupId>com.alibaba</groupId><artifactId>dubbo</artifactId><version>2.5.3</version><exclusions><exclusion><groupId>org.springframework</groupId><artifactId>spring</artifactId></exclusion><exclusion><groupId>org.apache.zookeeper</groupId><artifactId>zookeeper</artifactId></exclusion><exclusion><groupId>org.jboss.netty</groupId><artifactId>netty</artifactId></exclusion></exclusions></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-beans</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context-support</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-web</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>1.6.2</version></dependency><dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.16</version></dependency><dependency><groupId>org.javassist</groupId><artifactId>javassist</artifactId><version>3.15.0-GA</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>hessian-lite</artifactId><version>3.2.1-fixed-2</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.1.8</version></dependency><dependency><groupId>org.jvnet.sorcerer</groupId><artifactId>sorcerer-javac</artifactId><version>0.8</version></dependency><dependency><groupId>org.apache.zookeeper</groupId><artifactId>zookeeper</artifactId><version>3.4.5</version></dependency><dependency><groupId>com.github.sgroschupf</groupId><artifactId>zkclient</artifactId><version>0.1</version></dependency><dependency><groupId>org.jboss.netty</groupId><artifactId>netty</artifactId><version>3.2.7.Final</version></dependency></dependencies> View Code

?

總結(jié)

以上是生活随笔為你收集整理的基于Dubbo框架构建分布式服务(三)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 黄色一级免费 | 无码精品国产一区二区三区免费 | 麻豆久久久午夜一区二区 | 另类尿喷潮videofree | 日本免费黄网站 | 无码人妻精品一区二区三区在线 | 成年人黄色小视频 | youjizzxxxxx| 天天操天天操 | 肉番在线观看 | 亚洲乱码国产一区三区 | 欧美精品四区 | 成人在线观看一区二区 | 亚洲国产成人一区二区 | 日韩在线视频不卡 | 国产麻豆电影在线观看 | 欧美日韩亚洲国产综合 | 国产精品.www | 久久99九九| 日韩av综合在线 | 狠狠综合网 | 国产成人精品影院 | 国产永久免费视频 | 黄色av软件 | 少妇精品| 九九热在线免费观看 | 欧美多p| 国产亚洲精品久久久久丝瓜 | 青青免费在线视频 | 国产91精品久久久久 | 中文字幕av有码 | 中文字幕一区二区人妻在线不卡 | 狠狠爱婷婷 | 日韩欧美国产另类 | 国产欧美一区二区视频 | 中文字幕黑丝 | 亚洲女人在线 | 久久青青草原亚洲av无码麻豆 | 美女福利视频导航 | 亚洲色图50p | 色人阁视频 | 性感美女被草 | 97国产成人无码精品久久久 | 波多野结衣在线观看视频 | 一级成人免费 | 国产剧情一区 | 在线视频午夜 | 美女极度色诱图片www视频 | 黄色免费av网站 | 国产亚洲电影 | 色天天综合 | 阿v天堂网 | 美女福利视频导航 | 亚日韩欧美 | 亚洲视频网| 91成人在线视频 | 久久综合亚洲精品 | 国产91麻豆视频 | 动漫美女被到爽流 | 黄色av免费在线观看 | 日韩免费观看av | 欧洲黄色录像 | 免费黄色激情视频 | av不卡免费在线 | 他揉捏她两乳不停呻吟动态图 | 91玉足脚交嫩脚丫在线播放 | 免费色网址 | 播播开心激情网 | 国产精品福利小视频 | 免费a级| 国产在线v | 无码人妻一区二区三区线 | 国产东北女人做受av | 精品国产91乱码一区二区三区 | 国产露脸91国语对白 | jlzzzjlzzz国产免费观看 | 精品人妻天天爽夜夜爽视频 | 久久精品性爱视频 | 久久最新网址 | 黑鬼大战白妞高潮喷白浆 | 日本久久高清视频 | 91网在线 | 久久久精品人妻一区二区三区四 | 国精品人妻无码一区二区三区喝尿 | 成人黄色片网站 | 午夜影院免费看 | 国产激情无码一区二区三区 | 香蕉久久夜色精品国产使用方法 | 中国一级特黄毛片 | 亚洲AV成人无码精电影在线 | 国产精品一二三四 | 精品爆乳一区二区三区 | 爱av在线 | 99精品影视 | 91影视在线观看 | 久久精品欧美一区二区三区不卡 | 超碰在线中文 | 相亲对象是问题学生动漫免费观看 | 午夜精品999|