一、dubbo-admin
的部署
项目编译打包成功后,将dubbo-admin/target/dubbo-admin-2.8.xxx.war
复制到jetty
、tomcat
下的webapps
就算完成部署了(当然,也可以部署到其它兼容的servlet
容器,比如jboss
、weblogic
)。
然后浏览:http://localhost:8080/dubbo-admin/
会提示登陆用户名、密码,这是在配置文件里写死的,配置文件的路径为:
dubbo-admin/src/main/webapp/WEB-INF/dubbo.properties
dubbo.registry.address=zookeeper://127.0.0.1:2181?backup=127.0.0.1:2182,127.0.0.1:2183
dubbo.admin.root.password=root
dubbo.admin.guest.password=guest
即用户名、密码均为root
,登录成功后,刷新下页面,如果提示404
之类的,退回到 http://localhost:8080/
浏览(这个跟部署的contextPath
有关,如果contextPath
设置为/dubbo-admin
,刷新下就可以了,如果contextPath
设置成/
,则登录后要退回/
浏览)。
dubbo
的服务治理是其特色之一,管理界面如下:
二、dubbo-monitor-simple
部署
源项目打包后,目录dubbo-simple/dubbo-monitor-simple/target
中会生成dubbo-monitor-simple-xxx-assembly.tar.gz
,用tar -zxvf *.gz
解压,解压后有三个子目录bin
、conf
、lib
,conf
里面是配置文件:
dubbo.container=log4j,spring,registry,jetty
dubbo.application.name=simple-monitor
dubbo.application.owner=
dubbo.registry.address=zookeeper://127.0.0.1:2181
dubbo.protocol.port=7070
dubbo.jetty.port=8180
dubbo.jetty.directory=/data/dubbo/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
参考上面改,然后bin
下有一个start.sh
脚本,启动即可,访问后浏览http://localhost:8180
(端口号要跟配置里一致)
服务调用次数的统计:
服务之间的依赖关系:
注1:官网的监控是把所有监控数据(主要是统计数据和表图数据)保存到服务器磁盘上的,运行时间久了,硬盘可能会撑满,要注意及时清理(就是配置文件里面配置的3个目录下)。
注2:监控数据也并非实时统计的,所以第1次部署成功后马上去看统计数据,可能没有,随便跑一个service provider/service consumer的用例,然后等一会儿就可以了。
三、dubbo-monitor-x
oschina
上的开源项目,(为了与dubbox
里的dubbo-monitor
子项目名称上分开,在后面加了-x
),其中的开发者『马金凯』,也是dubbox
的作者之一。
不过,这个版本好象有点bug
,charts
上图表展示时会报错,通过跟代码,发现是sql
的问题,已经在个人fork
的分支上修复,有兴趣的可以参考。
注:与官网的监控存储方案不同,dubbo-monitor-x
是把数据保存在mysql
里的,参考README.md
很容易搞定部署。
此外,该版本还有一个mongodb
的分支,见:dubbo-monitor-mongo
(推荐使用)
四、dubbo keeper
这是托管在git上的开源项目,从github
用户信息上的邮箱后缀看,可能是阿里云的人发起的,与前面的项目不同,这个项目把管理+监控
集成在一起了,而且存储方案除了mysql
,还支持mongodb
,lucene
,不过好像项目没做完,只覆盖了dubbo-admin
官方功能的90%左右(比如:添加路由功能就没有),如果这个项目逐渐完善了,个人觉得最有前途。
不过,该项目部署略复杂:
如果决定用mysql
存储,先执行根目录下的install-mysql.sh
然后在target
目录下,dubbokeeper/target/mysql-dubbokeeper-server/mysql-server/conf
修改如下配置信息:
dubbo.application.name=mysql-monitor
dubbo.application.owner=bieber
dubbo.registry.address=zookeeper://localhost:2181
dubbo.protocol.name=dubbo
dubbo.protocol.port=20884
monitor.collect.interval=100
#usered netty4
### 最后
作为过来人,小编是整理了很多进阶架构视频资料、面试文档以及PDF的学习资料,针对上面一套系统大纲小编也有对应的相关进阶架构视频资料
![](https://img-blog.csdnimg.cn/img_convert/c6fb80469e30bd321765444d94d66bb6.webp?x-oss-process=image/format,png)
![](https://img-blog.csdnimg.cn/img_convert/451809c88a8e7268a96893b71157ee22.webp?x-oss-process=image/format,png)
也有对应的相关进阶架构视频资料
[外链图片转存中...(img-Ikt2GvxN-1714287787763)]
[外链图片转存中...(img-7eJ6IW7k-1714287787764)]
> **本文已被[CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】](https://bbs.csdn.net/topics/618154847)收录**