dubbox 的各种管理和监管[转]
dubbo官方自带了dubbo-admin及dubbo-simple/dubbo-monitor-simple二个子项目用于服务治理及服务监控。
一、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
|
1
2
3
|
dubbo.registry.address=zookeeper://127.0.0.1:2181?backup=127.0.0.1:2182,127.0.0.1:2183dubbo.admin.root.password=rootdubbo.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里面是配置文件:
|
1
2
3
4
5
6
7
8
9
10
11
|
dubbo.container=log4j,spring,registry,jettydubbo.application.name=simple-monitordubbo.application.owner=dubbo.registry.address=zookeeper://127.0.0.1:2181dubbo.protocol.port=7070dubbo.jetty.port=8180dubbo.jetty.directory=/data/dubbo/monitordubbo.charts.directory=${dubbo.jetty.directory}/chartsdubbo.statistics.directory=${user.home}/monitor/statisticsdubbo.log4j.file=logs/dubbo-monitor-simple.logdubbo.log4j.level=WARN |
参考上面改,然后bin下有一个start.sh脚本,启动即可,访问后浏览http://localhost:8180 (端口号要跟配置里一致)
这是调用次数的统计

这是图表统计

这是服务之间的依赖关系

注:官网的监控是把所有监控数据(主要是统计数据和表图数据)保存到服务器磁盘上的,运行时间久了,硬盘可能会撑满,要注意及时清理(就是配置文件里面配置的3个目录下)。监控数据也并非实时统计的,所以第1次部署成功后马上去看统计数据,可能没有,随便跑一个service provider/service consumer的用例,然后等一会儿就行了。
三、dubbo-monitor-x
oschina有一个开源项目:http://git.oschina.net/handu/dubbo-monitor (为了与dubbox里的dubbo-monitor子项目名称上分开,我在后面加了-x),其中的开发者『马金凯』,也是dubbox的作者之一。
不过,这个版本好象有点bug,charts上图表展示时会报错,我跟了下代码,是sql的问题,已经在个人fork的分支上修复,有兴趣的可以参考。


注:与官网的监控存储方案不同,dubbo-monitor-x是把数据保存在mysql里的,参考README.md很容易搞定部署。
此外,该版本还有一个mongodb的分支,见:dubbo-monitor-mongo (推荐使用)
四、dubbo keeper
这是托管在git上的项目,地址为:https://github.com/dubboclub/dubbokeeper,从github用户信息上的邮箱后缀看,可能是阿里云的人发起的,与前面的项目不同,这个项目把管理+监控集成在一起了,而且存储方案除了mysql,还支持mongodb,lucene,不过好象项目没做完,只覆盖了dubbo-admin官方功能的90%左右(比如:添加路由功能就没有),如果这个项目逐渐完善了,个人觉得最有前途。
该项目部署略复杂:
4.1 如果决定用mysql存储,先执行根目录下的install-mysql.sh
4.2 然后在target目录下,dubbokeeper/target/mysql-dubbokeeper-server/mysql-server/conf 修改这里面的配置
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
dubbo.application.name=mysql-monitordubbo.application.owner=bieberdubbo.registry.address=zookeeper://localhost:2181dubbo.protocol.name=dubbodubbo.protocol.port=20884monitor.collect.interval=100#usered netty4dubbo.provider.transporter=netty4#mysqldubbo.monitor.mysql.url=jdbc:mysql://default:3306/dubbokeeperdubbo.monitor.mysql.username=rootdubbo.monitor.mysql.password=123456dubbo.monitor.mysql.pool.max=10dubbo.monitor.mysql.pool.min=10 |
主要是zk及mysql的连接信息,以及端口号,然后执行上一级目录../bin下的start-mysql.sh 启动监控数据的存储服务(即:mysql-dubbokeeper-server本身就是一个dubbo服务,用于保存监控数据)
4.3 dubbokeeper/target/mysql-dubbokeeper-ui这个下面的war包扔到tomcat或jetty部署即可(这个才是真正的管理+监控 UI),如果启动失败,检查
dubbokeeper/dubbokeeper-ui/src/main/resources/dubbo.properties 配置是否正确,如果不对,改正确了,再重新打包部署。
这个项目可以很方便的看各项目的依赖关系图。

以及每个服务的调用次数等信息,可惜没有关键的QPS数据

问题:这几套方案统计出来的数据,对于同样的用例,都不一样,也是醉了,不知道哪家的更准,看个人喜好吧。
下面推荐几种搭配:
a: 官方的dubbo-admin + 韩都的dubbo-monitor-x
b: 全官方的dubbo-admin + dubbo-monitor-simple
c: dubbokeeper 一套
监控服务,如果同时起多个dubbo-admin里会有警告,而且监控数据存多份也没必要,所以不管怎么搭配,不要将dubbo-monitor-simple、dubbo-monitor-x、dubbokeeper同时部署在一个ZK注册中心。
http://www.cnblogs.com/yjmyzz/p/dubbo-admin-monitor-deploy.html
dubbox 的各种管理和监管[转]的更多相关文章
- dubbox 的各种管理和监管
dubbo官方自带了dubbo-admin及dubbo-simple/dubbo-monitor-simple二个子项目用于服务治理及服务监控. 一.dubbo-admin的部署 这个比较简单,编译打 ...
- 分布式服务框架 dubbo/dubbox 入门示例
dubbo是一个分布式的服务架构,可直接用于生产环境作为SOA服务框架. 官网首页:http://dubbo.io/ ,官方用户指南 http://dubbo.io/User+Guide-zh.htm ...
- 监控与管理dubbo服务
Dubbo是阿里多年前开源的一套服务治理框架,在众多互联网企业里应用广泛.本文介绍了一些如何监控与管理dubbo服务.使用的工具与<dubbox 的各种管理和监管>大致相同,本文更侧重于命 ...
- 服务化实战之 dubbo、dubbox、motan、thrift、grpc等RPC框架比较及选型
转自: http://blog.csdn.net/liubenlong007/article/details/54692241 概述 前段时间项目要做服务化,所以我比较了现在流行的几大RPC框架的优缺 ...
- dubbo、dubbox、motan、thrift、grpc等RPC框架比较及选型
概述 前段时间项目要做服务化,所以我比较了现在流行的几大RPC框架的优缺点以及使用场景,最终结合本身项目的实际情况选择了使用dubbox作为rpc基础服务框架.下面就简单介绍一下RPC框架技术选型的过 ...
- Dubbox 环境搭建-新(Windows下)
分布式服务框架 dubbo/dubbox 入门示例 dubbo是一个分布式的服务架构,可直接用于生产环境作为SOA服务框架. 官网首页:http://dubbo.io/ ,官方用户指南 http:// ...
- RPC调用框架比较分析
什么是RPC: RPC(Remote Procedure Call Protocol)——远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议. 简言之,RPC ...
- 分布式服务框架dubbo入门实例
dubbo是一个分布式的服务架构,可直接用于生产环境作为SOA服务框架. 官网首页:http://dubbo.io/ ,官方用户指南 http://dubbo.io/User+Guide-zh.htm ...
- Dubbo详细介绍与安装使用过程
今天看到一篇不错的dubbo介绍教程,原文链接:http://blog.csdn.net/xlgen157387/article/details/51865289 1 Dubbo介绍 1.1 dubb ...
随机推荐
- 在pycharm中启动Django服务器
1.要是直接运行manage.py程序的话 会提示一大堆东西,那无非是提示没有传入参数.先打开mange.py,然后再运行,会提示一堆东西,表示没有配置参数.在pycharm右上角点击edit con ...
- Faiss教程:基础
Faiss对一些基础算法提供了非常高效的实现:k-means.PCA.PQ编解码. 聚类 假设2维tensor x: ncentroids = 1024 niter = 20 verbose = Tr ...
- 基于jQuery弹出层图片动画查看代码
分享一款基于jQuery弹出层图片动画查看代码是一款鼠标单击文字或图片内容放大显示且含圆角投影效果.效果图如下: 在线预览 源码下载 实现的代码. html代码: <div class=&q ...
- 基于jQuery悬停图片变色放大特效
分享一款基于jQuery悬停图片变色放大特效是一款响应式鼠标悬停图片放大效果代码.效果图如下: 在线预览 源码下载 实现的代码. html代码: <div style="width ...
- [转]Oracle存储过程总结
原文地址:https://www.cnblogs.com/tingbogiu/p/5641000.html 1.存储过程结构 1.1 第一个存储过程 create or replace procedu ...
- asp.net gridview 如何实现行点击事件
第一步:绑定行点击事件 protected void GV_DATA_RowDataBound( object sender, GridViewRowEventArgs e ) { if( e.Row ...
- ViewController之间的转场和数据传递
ViewController之间的转场和数据传递 可以正向传递值, 反向传递值. 注意反向传值的时候,方法的位置: https://github.com/urmyfaith/GRDBUsage/blo ...
- 【WPF】树形结构TreeView的用法(MVVM)
TreeView控件的用法还是有蛮多坑点的,最好记录一下. 参考项目: https://www.codeproject.com/Articles/26288/Simplifying-the-WPF-T ...
- [iptables]iptables常规设置
转自:http://leil.plmeizi.com/archives/centos-iptables%E9%85%8D%E7%BD%AE%E6%96%B9%E6%B3%95%E8%BD%AC/ 关闭 ...
- [4G]4G模块的热重启
最近在调试4G模块,发现在开机启动时执行的AT指令会概率性的出现返回杂乱字符串的问题.想尽了各种办法还是行不通,在系统中使用minicom敲AT指令就不会有问题,开始怀疑是串口初始化的问题,修改了很多 ...