测试 dubbo-admin 和 dubbo-monitor-sample

测试服务采用双协议,一个rest协议,一个dubbo协议.

测试 dubbo-admin,dubbo-admin主要是做路由配置和动态配置2块。


动态配置测试

1. checkout tag dubbo-2.6.0代码(命令 git checkout -B tag-dubbo-2.6.0 dubbo-2.6.0),进入dubbo-admin目录, mvn jetty:run

2. 测试"禁用提供者",参数 disabled=true

dubbo协议:

override://10.1.9.254:20800/com.alibaba.boot.dubbo.service.IHelloService?category=configurators&disabled=true&dynamic=false&enabled=true&group=test&version=1.0.0

rest协议:

override://10.1.9.254:7001/com.alibaba.boot.dubbo.service.IHelloRestService?category=configurators&disabled=true&dynamic=false&enabled=true&group=test&version=1.0.0

3.结果

        1. dubbo协议配置后无法访问。rest协议,通过 curl http://localhost:7001/rest/hello,还可以访问, 因为不走 cluster(cluster配置只在consumer端生效,curl跳过了consumer配置)。 

        2. rest协议无法泛化调用

4.看看文档

动态配置url规则

    override: 覆盖方式,协议,必填

    0.0.0.0 : 表示对哪些ip地址生效, 如果只覆盖某个ip, 请填入具体ip地址,必填

    com.foo.BarService :  必填,对指定服务生效

    category=configurators :  必填, 标识该数据为动态配置类型, 必填

    dynamic=false :  表示该数据为持久数据, 当注册方退出时, 数据依然保存在注册中心, 必填

    enabled=true:  覆盖规则是否生效, 缺省生效

    application=foo: 表示只对指定应用生效, 可不填,表示对所有应用生效

可以覆盖的参数, 供参考

    1. 容量评估时调整权重,降低一台机器的权重,看其他机器的压力. 参数: weight=200, 默认100

    2. 禁用提供者, 下线某台机器.  参数: disabled=true

    3. 调整负载均衡策略. 参数: loadbalance=leastactive

    4. 服务降级.  参数: mock=force:return+null / mock=fail:return+null

    5. 设置超时时间. 参数 timeout=1000

5. 也可以代码实现

RegistryFactory registryFactory = ExtensionLoader.getExtensionLoader(RegistryFactory.class).getAdaptiveExtension();

Registry registry = registryFactory.getRegistry(URL.valueOf("zookeeper://10.20.153.10:2181"));

registry.register(URL.valueOf("override://0.0.0.0/com.foo.BarService?category=configurators&dynamic=false&application=foo&timeout=1000"));

测试 dubbo-monitor-sample

1. dubbo-monitor-sample,SimpleMonitorService 也是一个dubbo服务,    dubbo-monitor-sample作为privider存在。配置文件(conf/dubbo.properties)里, dubbo.container=log4j,spring,registry,jetty

          dubbo container, 可以看源码,不是很难理解, 启动执行的入口是 com.alibaba.dubbo.container.Main

        不太了解jetty的性能,如果访问qps较高,会不会有影响

2. DubboMonitor 定时调用 monitorService接口,测试时可以把interval调短一些 <dubbo:monitor protocol="registry" interval="5000">

3. MonitorFilter 调用了 MonitorService,MonitorFactory采用异步的方式来获取 MonitorService,cluster模式是failsafe,所以本次调用不会影响正常服务

       这里有个bug, DubboMonitorFactory.createMonitor

看代码是用failsafe ,可是断点跟踪

怎么是 Failover  。。。

RegistryDirectory 里

传的参数被clear掉了。。

dubbo 的 url构造、传参,太容易把人绕晕。尝试


解决

不晓得是我使用姿势不对,还是真是个bug。。。

dubbo-2.6.0 版本包含 dubbo-admin 和 dubbo-monitor-sample,新版本git地址,https://github.com/apache/incubator-dubbo-ops,单独一个ops项目, 现在提供的功能和老版本一样,有几个未实现的功能入口

总结

    1. 路由规则很强大,zookeeper不支持多dc,可以用路由解决。

    2. 容量评估,评估单台机器性能,可以调整weight

    3. 某台机器出问题,可是屏蔽访问

    4. dubbo-monitor-sample 只支持单台,如果负载较大,应该也可以通过路由解决

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,456评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,370评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,337评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,583评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,596评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,572评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,936评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,595评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,850评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,601评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,685评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,371评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,951评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,934评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,167评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,636评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,411评论 2 342

推荐阅读更多精彩内容

  • dubbo.xsd 文件说明 当我们要使用Dubbo进行 配置时,需要像下面那样引入dubbo.xsd这个文件. ...
    Mis_Gtw阅读 1,096评论 0 1
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,585评论 18 139
  • 0 准备 安装注册中心:Zookeeper、Dubbox自带的dubbo-registry-simple;安装Du...
    七寸知架构阅读 13,966评论 0 88
  • Dubbo是什么 Dubbo是Alibaba开源的分布式服务框架,它最大的特点是按照分层的方式来架构,使用这种方式...
    Coselding阅读 17,165评论 3 196
  • l因为热爱,我们在精控 3000余场艺术展讯,20000余名艺术家,60000余幅在展艺术品。我们只选取和发布精品...
    艺厘米artcm阅读 168评论 0 0