Dubbo是由阿里巴巴开源的基于Java的高性能RPC框架。和许多RPC系统一样,dubbo基于定义服务的想法,指定可以通过参数和返回类型远程调用的方法。在服务器端,服务器实现此接口并运行一个dubbo服务器来处理客户端调用。在客户端,客户端有一个存根,提供与服务器相同的方法。

一、Dubbo架构

下图是Dubbo官网所示的结构图

基于RPC标准实现的Dubbo框架简介

上图中各节点说明:

1、provider:暴露服务的服务提供方

2、consumer:调用远程服务的消费方

3、registry:服务注册与发现中心

4、monitor:统计服务的调用次数和调用时间的监控中心

5、container:服务运行容器

调用关系说明:

0、服务容器负责启动,加载,运行服务提供者。

1、服务提供者在启动时,向注册中心注册自己提供的服务。

2、服务消费者在启动时,向注册中心订阅自己所需的服务。

3、注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接推送变更数据给消费者。

4、服务消费者,从提供者地址列表中,基于软负载均衡算法,选一台提供者进行调用,如果调用失败,再选另一台调用。

5、服务消费者和提供者,在内存中累计调用次数和调用时间,定时每分钟发送一次统计数据到监控中心。

 


相关文章:

  • 2022-12-23
  • 2021-05-25
  • 2021-11-30
  • 2021-08-21
  • 2022-12-23
  • 2021-10-22
  • 2022-02-21
猜你喜欢
  • 2021-06-26
  • 2021-11-19
  • 2021-08-11
  • 2021-11-16
  • 2021-08-01
  • 2021-11-09
  • 2021-12-31
相关资源
相似解决方案