1、分布式架构 Dubbo + Zookeeper笔记(综述)

Dubbo和Zookeeper是阿里巴巴项目开发中常用的架构方式,作为主流的服务架构方式有必要学习一下。

百度一下:

  • Dubbo是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring框架无缝集成。
  • ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。

可见,通过实现服务的Dubbo和协调服务的注册中心Zookeeper就可以实现基本的服务架构。

下图是Dubbo官网的架构图:

inti 初始化,async异步,sync同步

1、分布式架构 Dubbo + Zookeeper笔记(综述)

运行过程:

    0.服务启动,启动容器(Container),其中部署的服务提供方(Provider)加载运行。

    1.服务提供方(Provider)注册到注册中心,本文即Zookeeper。

    2.服务消费方(Consumer)订阅(Subscribe)注册中心中所需要的服务。

    3.注册中心(Registry)通知(notify)服务消费方(Consumer)订阅成功。

    4.服务消费方(Consumer)调用(invoke)具体的服务提供方(Provider)。

    5.服务消费方(Consumer)和服务提供方(Provider)异步告知监控中心(Monitor)进行服务统计(count)。

参考资料:

dubbo源码github地址:https://github.com/apache/dubbo

dubbo官网文档:http://dubbo.apache.org/zh-cn/docs/user/quick-start.html

zookeeper官网:https://zookeeper.apache.org/