日韩性视频-久久久蜜桃-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ò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产免费毛卡片 | 成人特级片 | 成人av高清| 亚洲精品久久久久久久久久吃药 | 亚洲一区二区影视 | 公侵犯人妻中文字慕一区二区 | 韩国精品av| 国产视频黄色 | 少妇无码一区二区三区免费 | 人妻无码一区二区三区 | 关之琳三级全黄做爰在线观看 | 亚洲精品久久久久avwww潮水 | 欧美成人免费一级人片100 | 国产欧美亚洲精品 | 精品成人| 亚洲国产一区二区a毛片 | 日本国产精品一区 | 国产国语老龄妇女a片 | 天天搞夜夜 | 伊人三级| 狠狠操在线播放 | 中文字幕一区二区三区夫目前犯 | 日韩欧美一级片 | 污视频在线免费 | 国产伦精品一区二区三区照片91 | 久久久无码精品亚洲国产 | 欧美性猛交 | 一本—道久久a久久精品蜜桃 | 精品成人网 | 无码成人精品区一级毛片 | 成人国产精品入口免费视频 | 亚洲最新在线 | 国产精品久久久久久亚洲调教 | 婷婷四房综合激情五月 | av在线日韩| 日韩黄色一级 | 日韩欧美不卡在线 | 欧洲成人综合 | 久久综合激情 | 成片免费观看视频大全 | 亚洲同性gay激情无套 | 青青草成人网 | 九九人人| 天堂va蜜桃一区二区三区漫画版 | avtt久久| 亚洲Av无码成人精品区伊人 | 国产成人精品一区二区在线小狼 | 免费污片软件 | 香蕉视频链接 | 欧美成年人视频在线观看 | 欧美日韩国产一区二区三区在线观看 | 欧美一线天 | 亚洲一区免费 | 久久成年视频 | 日韩精品极品视频 | 青草久久网 | 精品人妻一区二区三区三区四区 | 欧美日韩a | 亚洲人体av | 精品精品| 免费看污片网站 | av中文字幕免费观看 | 亚洲国产精品成人综合久久久 | 福利综合网 | 日韩欧美国产高清 | 大桥未久av在线 | 青青草一区二区 | 黄色网战入口 | 九色自拍视频 | 91cn.com| 日日夜夜狠狠干 | 国产精品美女久久久久av爽 | 视频二区中文字幕 | www.亚洲综合 | 亚洲v天堂 | 极品人妻一区二区 | 在线免费观看中文字幕 | 欧美日韩国产在线 | 亚洲av成人精品日韩在线播放 | 国产精品国产一区 | 亚洲欧美另类中文字幕 | 国产精品一二三级 | 草草影院发布页 | 射进来av影视网 | 九九99精品视频 | 久草视频免费在线播放 | 天堂网91| 97久久超碰 | 神马久久网 | 天堂网亚洲 | www国产精品内射熟女 | 一本久久久久 | 欧美成人猛片aaaaaaa | 波多野结衣亚洲天堂 | 国产人妻一区二区三区四区五区六 | 亚洲天堂视频一区 | 天天色天天色 | 91爱视频| 青青草老司机 |