高性能Java RPC框架Dubbo与zookeeper的使用

1、Dubbo介绍

  • Dubbo是使用RPC远程调用协议来进行通信的,是典型的CS架构。
  • Dubbo 是由阿里巴巴开源的一个高性能、基于 Java 开源的远程调用框架。正如在许多RPC 系统中一样,dubbo是基于定义服务的概念,指定可以通过参数和返回类型远程调用的方法。在服务器端,服务器实现这个接口,并运行一个 dubbo服务器来处理客户端调用。在客户端,客户机有一个存根,它提供与服务器相同的方法。
    在这里插入图片描述
    实例分析:
    上图中0代表dubbo服务器启动后;
    1服务端向注册中心进行注册提供url;
    2消费者向注册中心订阅服务;
    3注册中心向消费者提供服务者的映射url;
    4消费者根据映射url请求服务端;
    5监测中心定时采集服务的存活数,俗称心跳。

2、Zookpeeper的介绍

在这里插入图片描述

上面为zookeeper的主要工作结构图

流程说明:
服务提供者启动时: 向/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:reference group=“” version=“” /> ,可订阅服务的所有分组和所有版本的提供者

通俗说就是zookeeper充当了dubbo中的注册中心,而且支持集群部署。

具体实现代码参考下面大神的链接:

高性能Java RPC框架Dubbo与zookeeper的使用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值