Dubbo Zookeeper Registry

系统 1393 0

http://code.alibabatech.com/wiki/display/dubbo/User+Guide#UserGuide-RequiredDependencies

Zookeeper Registry

 

建议使用dubbo-2.3.3以上版本的zookeeper注册中心客户端

 

Zookeeper说明
Zookeeper是Apacahe Hadoop的子项目,是一个树型的目录服务,支持变更推送,适合作为Dubbo服务的注册中心,工业强度较高,可用于生产环境,并推荐使用,参见: http://zookeeper.apache.org

 

Zookeeper安装
安装方式参见:  Zookeeper安装手册 ,只需搭一个原生的Zookeeper服务器,并将 Quick Start 中Provider和Consumer里的conf/dubbo.properties中的dubbo.registry.addrss的值改为zookeeper://127.0.0.1:2181即可使用

 


Dubbo Zookeeper Registry

 

 

流程说明:

  • 服务提供者启动时
    • 向/dubbo/com.foo.BarService/providers目录下写入自己的URL地址。
  • 服务消费者启动时
    • 订阅/dubbo/com.foo.BarService/providers目录下的提供者URL地址。
    • 并向/dubbo/com.foo.BarService/consumers目录下写入自己的URL地址。
  • 监控中心启动时
    • 订阅/dubbo/com.foo.BarService目录下的所有提供者和消费者URL地址。

支持以下功能:

  • 当提供者出现断电等异常停机时,注册中心能自动删除提供者信息。
  • 当注册中心重启时,能自动恢复注册数据,以及订阅请求。
  • 当会话过期时,能自动恢复注册数据,以及订阅请求。
  • 当设置<dubbo:registry check="false" />时,记录失败注册和订阅请求,后台定时重试。
  • 可通过<dubbo:registry username="admin" password="1234" />设置zookeeper登录信息。
  • 可通过<dubbo:registry group="dubbo" />设置zookeeper的根节点,缺省为dubbo。
  • 支持*号通配符<dubbo:reference group="*" version="*" />,可订阅服务的所有分组和所有版本的提供者。

在provider和consumer中增加zookeeper客户端jar包依赖:

< dependency >
     < groupId >org.apache.zookeeper</ groupId >
     < artifactId >zookeeper</ artifactId >
     < version >3.3.3</ version >
</ dependency >

或直接下载: http://repo1.maven.org/maven2/org/apache/zookeeper/zookeeper

支持zkclient和curator两种Zookeeper客户端实现:

 

ZKClient Zookeeper Registry

从2.2.0版本开始缺省为zkclient实现,以提升zookeeper客户端的健状性。

ZKClient是Datameer开源的一个Zookeeper客户端实现,开源比较早,参见: https://github.com/sgroschupf/zkclient

缺省配置:

< dubbo:registry   ... client = "zkclient"   />

或:

dubbo.registry.client=zkclient

或:

zookeeper://10.20.153.10:2181?client=zkclient

需依赖:

< dependency >
     < groupId >com.github.sgroschupf</ groupId >
     < artifactId >zkclient</ artifactId >
     < version >0.1</ version >
</ dependency >

或直接下载: http://repo1.maven.org/maven2/com/github/sgroschupf/zkclient

 

Curator Zookeeper Registry

从2.3.0版本开始支持可选curator实现。

Curator是Netflix开源的一个Zookeeper客户端实现,比较活跃,参见: https://github.com/Netflix/curator

如果需要改为curator实现,请配置:

< dubbo:registry   ... client = "curator"   />

或:

dubbo.registry.client=curator

或:

zookeeper://10.20.153.10:2181?client=curator

需依赖:

< dependency >
     < groupId >com.netflix.curator</ groupId >
     < artifactId >curator-framework</ artifactId >
     < version >1.1.10</ version >
</ dependency >

或直接下载: http://repo1.maven.org/maven2/com/netflix/curator/curator-framework

Zookeeper单机配置:

< dubbo:registry   address = "zookeeper://10.20.153.10:2181"   />

Or:

< dubbo:registry   protocol = "zookeeper"   address = "10.20.153.10:2181"   />

Zookeeper集群配置:

< dubbo:registry address = "zookeeper://10.20.153.10:2181?backup=10.20.153.11:2181,10.20.153.12:2181"   />

Or:

< dubbo:registry   protocol = "zookeeper" address = "10.20.153.10:2181,10.20.153.11:2181,10.20.153.12:2181"   />

同一Zookeeper,分成多组注册中心:

< dubbo:registry   id = "chinaRegistry"   protocol = "zookeeper"   address = "10.20.153.10:2181" group = "china"   />
< dubbo:registry   id = "intlRegistry"   protocol = "zookeeper"   address = "10.20.153.10:2181" group = "intl"   />

Dubbo Zookeeper Registry


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论