1、Dubbo 的注册中心

注册中心的作用:服务的注册与发现。

Dubbo的注册中心有:

  • Multicast注册中心;
  • Zookeeper注册中心(官方推荐);
  • Redis注册中心;
  • Simple注册中心;
  • Dubbo官方推荐使用Zookeeper注册中心。

1.1、Zookeeper注册中心

1、Zookeeper 是 Apacahe Hadoop 的子项目,是一个树型的目录服务,支持变更推送,适合作为 Dubbo 服务的注册中心,工业强度较高,可用于生产环境,官方推荐使用。可以实现云管理, cloud management,Zookeeper本身支持集群,支持高并发,支持负载均衡,支持高可用。

部署dubbo注册中心 dubbo支持的注册中心_zookeeper

1.2、Zookeeper注册中心流程说明:

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

1.3、Zookeeper注册中心支持以下功能:

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

2、其他注册中心

2.1、Simple 注册中心

Simple 注册中心是 Dubbo 提供的简单实现,不支持集群,不支持高并发.只能处理简单实现,是 Dubbo 中的一个简单类型,通过创建对象,并启动方法,实现注册中心,只适用于开发测试过程或学习过程。

2.2、Redis注册中心

Redis 注册中心是高效的内存服务器,KV 服务器,NoSQL 数据库。可以支持高并发,集群管理。 但是通过心跳监测处理注册中心的有效性管理。 服务和消费者越多,反应效率越低,常用于中型开发.

2.3、Multicast注册中心

Multicast 注册中心最不常用,是广播中心,是使用小型的架构,容易造成广播风暴问题。不推荐使用的,建议学习的时候可以考虑使用。

3、Zookeeper 在Linux系统的安装


安装步骤:

  • 第一步:安装 jdk,
  • 第二步:下载 zookeeper-3.4.5-cdh5.3.6.tar.gz 压缩包 ,点击下载 。
  • 第三步:把 zookeeper 的压缩包(zookeeper-3.4.5-cdh5.3.6.tar.gz)上传到 linux 系统。
  • 第四步:解压缩压缩包。 tar -zxvf zzookeeper-3.4.5-cdh5.3.6.tar.gz
  • 第五步:进入 zookeeper-3.4.6 目录,创建 data 文件夹。 cd zookeeper-3.4.6

mkdir data

  • 第六步:进入conf目录 ,把 zoo_sample.cfg 改名为 zoo.cfg。 cd conf
  • mv zoo_sample.cfg zoo.cfg
  • 第七步:打开zoo.cfg , 修改 data 属性:dataDir=/opt/javasoft/zookeeper-3.4.5-cdh5.3.6/data,(注意:这是我的data路径,修改为自己的 data 路径)。 vim zoo.cfg
  •