微服务架构Dubbo之注册中心(Zookeeper)
2020-03-28 20:23
986 查看
注册中心简介
在微服务架构中,注册中心是核心的基础服务之一。在微服务架构流行之前,注册中心就已经开始出现在分布式架构的系统中。Dubbo是一个在国内比较流行的分布式框架,被大量的中小型互联网公司所采用,Dubbo是一个非常实用的框架,提供了比较完善的服务治理功能,而服务治理的实现主要依靠的就是注册中心。
Dubbo官网架构图
在Dubbo架构图中,可以看到注册中心(Registry)位于顶端,所有的服务治理相关的操作都围绕它进行。服务提供者(Provider)注册到注册中心,服务消费者(Comsumer)到注册中心订阅,同时,注册中心中的变更也会通知服务消费者。
注册中心的调用过程
-
服务提供者启动时,会将自己的服务信息(服务名称/IP地址/端口号等)写入注册中心。
-
当注册中心接收提供者数据时,会动态的维护服务列表数据。
-
当消费者启动时,首先会链接注册中心.获取服务列表数据。
-
当注册中心接收到消费者的请求之后,先将消费者的信息进行记录. 将服务列表信息发给消费者。
-
当消费者接收注册中心发来的数据之后,将数据保存到消费者本地.至此消费者启动完成. 等待用户的调用。
-
当消费者接收调用时,则根据服务列表数据找到可以提供服务的提供者,之后利用负载均衡算法,挑选其中一个进行访问。
-
注册中都有心跳检测机制. 当服务器发生宕机现象时,注册中心会动态的维护服务列表数据.同时全网广播,通知所有的消费者更新服务列表数据.保证服务数据的一致性。
Dubbo可以用Zookeeper作为注册中心,存储提供者注册的远程服务信息
Zookeeper采用树形的目录结构来存储信息
- 服务提供者启动时: 向 /dubbo/com.foo.BarService/providers 目录下写入自己的 URL 地 址
- 服务消费者启动时: 订阅 /dubbo/com.foo.BarService/providers 目录下的提供者 URL 地 址。并向 /dubbo/com.foo.BarService/consumers 目录下写入自己的 URL 地址
- 监控中心启动时: 订阅 /dubbo/com.foo.BarService 目录下的所有提供者和消费者 URL 地 址。
Zookeeper支持以下功能:
- 当提供者出现断电等异常停机时,注册中心能自动删除提供者信息
- 当注册中心重启时,能自动恢复注册数据,以及订阅请求
- 当会话过期时,能自动恢复注册数据,以及订阅请求
- 当设置<dubbo:registry check="false" />时,记录失败注册和订阅请求,后台定时重试
- 可通过设置<dubbo:registry username="admin" password="124" />设置zookeeper 登录信息
- 可通过<dubbo:registry group="dubbo" />设置 zookeeper 的根节点,不设置将使用无 根树
- 支持 * 号通配符 <dubbo:redistry group="" version="" />,可订阅服务的所有分组 和所有版本的提供者
下文是--->微服务架构Dubbo之Zookeeper安装测试和Zookeeper集群的搭建
相关文章推荐
- NET(C#)接入Dubbo服务,Zookeeper作为Dubbo服务的注册中心,实现thrift协议访问接口(2)
- 以zookeeper为注册中心springmvc集成dubbo的服务实现
- NET(C#)接入Dubbo服务,Zookeeper作为Dubbo服务的注册中心,实现thrift协议访问接口(2)
- NET(C#)接入Dubbo服务,Zookeeper作为Dubbo服务的注册中心,实现thrift协议访问接口(3)
- (十四)springmvc+mybatis+dubbo+zookeeper分布式架构 整合 - window安装zookeeper注册中心
- (十二)springmvc+mybatis+dubbo+zookeeper分布式架构 整合 - zookeeper注册中心安装
- Dubbo的高可用,如果作为注册中心的zookeeper宕机了,那消费者是否还能调用提供者的服务呢?
- 用zookeeper作为Dubbo的注册中心发布服务
- 本机搭建dubbo服务并依赖zookeeper注册中心
- Zookeeper注册中心安装——dubbo服务需要
- Dubbo多注册中心和Zookeeper服务的迁移
- zookeeper 安装(dubbo 服务注册中心)
- 淘宝SOA框架dubbo学习(2)--搭建Zookeeper注册中心服务
- dubbo(分布式架构)+zookeeper(注册中心)+spring(provider和consumer) 基本使用
- 部署dubbo-admin监控dubbo服务(以zookeeper为注册中心)
- 基于Dubbo的分布式系统架构-Zookeeper注册中心的安装
- 基于Dubbo的分布式系统架构(一):安装ZooKeeper注册中心(单机版)
- Dubbo框架初探【用Spring配置声明暴露服务(可以使用multicast广播注册中心暴露服务地址或者使用zookeeper注册中心暴露服务地址)、加载Spring配置,启动服务】
- NET(C#)接入Dubbo服务,Zookeeper作为Dubbo服务的注册中心,实现thrift协议访问接口(1)
- 基于ZooKeeper的Dubbo服务注册中心