`
wbj0110
  • 浏览: 1598070 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

Dubbo分析一

阅读更多

Dubbo的总体架构如下图所示:

    

节点角色说明:

 

  • Provider: 暴露服务的服务提供方。
  • Consumer: 调用远程服务的服务消费方。
  • Registry: 服务注册与发现的注册中心。
  • Monitor: 统计服务的调用次调和调用时间的监控中心。
  • Container: 服务运行容器。

 

 

调用关系说明:

0. 服务容器负责启动,加载,运行服务提供者。
1. 服务提供者在启动时,向注册中心注册自己提供的服务。
2. 服务消费者在启动时,向注册中心订阅自己所需的服务。
3. 注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接

推送变更数据给消费者。
4. 服务消费者,从提供者地址列表中,基于软负载均衡算法,选一台提供者进行调用,

如果调用失败,再选另一台调用。
5. 服务消费者和提供者,在内存中累计调用次数和调用时间,定时每分钟发送一次统

计数据到监控中心。 

 

 

(1) 连通性: 注册中心负责服务地址的注册与查找,相当于目录服务,服务提供者和消费者只在启动

时与注册中心交互,注册中心不转发请求,压力较小; 监控中心负责统计各服务调用次数,调用时间等,统计先在内存汇总后每分钟一次发送

到监控中心服务器,并以报表展示; 服务提供者向注册中心注册其提供的服务,并汇报调用时间到监控中心,此时间不包含

网络开销; 服务消费者向注册中心获取服务提供者地址列表,并根据负载算法直接调用提供者,同

时汇报调用时间到监控中心,此时间包含网络开销; 注册中心,服务提供者,服务消费者三者之间均为长连接,监控中心除外; 注册中心通过长连接感知服务提供者的存在,服务提供者宕机,注册中心将立即推送事

件通知消费者; 注册中心和监控中心全部宕机,不影响已运行的提供者和消费者,消费者在本地缓存了

提供者列表; 注册中心和监控中心都是可选的,服务消费者可以直连服务提供者;

(2) 健状性:
监控中心宕掉不影响使用,只是丢失部分采样数据; 数据库宕掉后,注册中心仍能通过缓存提供服务列表查询,但不能注册新服务; 注册中心对等集群,任意一台宕掉后,将自动切换到另一台; 注册中心全部宕掉后,服务提供者和服务消费者仍能通过本地缓存通讯; 服务提供者无状态,任意一台宕掉后,不影响使用; 服务提供者全部宕掉后,服务消费者应用将无法使用,并无限次重连等待服务提供者恢

复;

(3) 伸缩性: 注册中心为对等集群,可动态增加机器部署实例,所有客户端将自动发现新的注册中心; 服务提供者无状态,可动态增加机器部署实例,注册中心将推送新的服务提供者信息给

消费者;

(4) 升级性:
当服务集群规模进一步扩大,带动
IT 治理结构进一步升级,需要实现动态部署,进行流动计算,现有分布式服务架构不会带来阻力:



 

 
 

 

Deployer: 自动部署服务的本地代理。
Repository: 仓库用于存储服务应用发布包。
Scheduler: 调度中心基于访问压力自动增减服务提供者。 Admin: 统一管理控制台。 

 

 

 

  • 大小: 139.6 KB
分享到:
评论

相关推荐

    dubbo源码分析pdf.zip

    《Dubbo源码分析》是一套深入探讨Apache Dubbo这一著名Java开源框架的书籍,旨在帮助开发者更好地理解和应用Dubbo。Dubbo是一个高性能、轻量级的服务治理框架,广泛应用于微服务架构中,以实现服务的发布、发现、...

    dubbo源码分析系列

    《Dubbo源码分析系列》是一份深入探讨Java开源框架Dubbo核心原理和技术细节的资料。Dubbo,作为阿里巴巴的一款高性能、轻量级的服务治理框架,它为分布式系统提供了服务发现、调用、负载均衡、容错等关键功能。这份...

    dubbo资源 dubbo-admin dubbo demo

    1. **Dubbo**: Dubbo的核心功能是提供服务的发布和引用,以及服务间的调用。它支持多种协议,如RPC、HTTP、Hessian等,并且具备负载均衡、容错、服务注册与发现、调用跟踪等功能。Dubbo的出现,使得开发者可以轻松...

    Dubbo源码分析之SPI

    1. **ExtensionLoader**:这是Dubbo SPI的核心类,负责加载服务实现。它会缓存已加载的服务,避免重复加载,并提供获取默认服务、所有服务实例、按条件过滤服务等方法。 2. **AdaptiveExtension**:适应性扩展是...

    dubbo的源码分析

    深入分析Dubbo的源码可以帮助开发者更好地理解和利用这一强大的工具,以实现更高效的企业级应用。 首先,我们要理解Dubbo的核心组件和设计模式。Dubbo采用了Service、Provider、Consumer、Registry、Monitor五种...

    dubbo源码解析2

    综上所述,通过对Dubbo源码的详细分析,我们可以了解到它不仅仅是一个简单的RPC框架,而是涵盖了服务治理、集群容错、负载均衡等多个方面的复杂系统。希望以上解析能够帮助读者更深入地理解Dubbo的内部工作原理和...

    dubbo源码解析

    1. 首先,我们需要了解dubbo的背景。随着互联网的发展,网站应用的规模不断扩大,对服务的高可用性、扩展性、安全性等方面提出了更高的要求。dubbo作为一个分布式服务框架,能够在复杂的网络环境下提供高性能和透明...

    Apache Dubbo:Dubbo监控与运维:服务性能分析

    ### Apache Dubbo:Dubbo监控与运维:服务性能分析 #### 一、Dubbo监控概述 ##### 1.1 Dubbo监控的重要性 在现代微服务架构中,由于服务之间存在着复杂的调用关系,任何单一服务的性能问题都有可能对整体系统稳定...

    dubbodubbo.zip

    5. **服务监控**:Dubbo内置了监控中心,可以统计服务的调用次数、调用时间、异常比例等指标,方便进行服务性能分析。 三、Dubbo实战应用 1. **服务配置**:通过XML配置文件或API方式,可以轻松地定义服务提供者和...

    dubbo监控dubbo-monitor

    1. **服务监控**:Dubbo-Monitor可以显示服务的调用次数、调用成功率、平均响应时间等关键指标,帮助我们实时了解服务的健康状况。 2. **异常报警**:当服务出现异常时,如超时、失败率上升等,Dubbo-Monitor可以...

    dubbo admin jdk1.8

    通常,Dubbo Admin会提供一个Web界面,允许用户查看服务提供者和服务消费者的实时状态,管理服务的注册和发现,以及查看和分析调用日志等。 在具体操作中,用户需要先确保本地安装了JDK1.8,并配置好环境变量。接着...

    dubbo源码分析系列1

    通过以上对Dubbo核心模块的分析,我们可以看到Dubbo是如何通过模块化、接口抽象和可扩展性设计,构建出一个强大且灵活的分布式服务框架。深入理解这些模块的运作原理,对于提升我们的分布式系统设计和实现能力...

    Dubbo 源码分析

    Dubbo是中国阿里巴巴开源的一款高性能、轻量级的Java服务治理框架,它主要专注于服务调用、服务注册与发现、负载均衡、容错以及监控等核心功能。深入理解Dubbo的源码有助于开发者优化服务性能,解决实际问题,以及更...

    dubbo接口测试调试工具

    前段时间排查某问题的时候,想要快速知道某些dubbo接口(三无)的响应结果,但不想启动项目(因为这些项目不是你负责的,不会部署而且超级笨重),也不想新建一个dubbo客户端项目(占地方),也不想开telnet客户端...

    Dubbo入门_实战

    在这个案例中,我们将具体分析Dubbo如何帮助实现这一目标。 - **角色定义**: - **Consumer**(消费者): 即系统A,需要调用其他系统的接口获取数据。 - **Provider**(提供者): 即系统B,提供数据接口。 - **...

    dubbo-admin 2.6 dubbo monitor

    1. **Dubbo Admin**: Dubbo Admin是一个图形化界面,主要用于监控服务提供者和服务消费者的运行状态,可以查看服务的注册信息、调用统计、配置信息等。它提供了服务树视图,展示服务的层次结构;接口调用视图,展示...

    dubbo2.5.6.zip

    在遇到像Dubbo 2.5.6与Java 1.8这样的兼容性问题时,我们需要仔细分析问题,找出根源,并采取适当的措施来解决问题,确保系统的稳定运行。同时,持续关注框架和Java版本的更新,以便及时利用新功能并解决潜在问题。

    Dubbo高级视频教程

    - **Dubbo简介**:Dubbo是一款高性能、轻量级的开源Java RPC框架,旨在为服务治理提供简单、全面的解决方案。 - **分布式系统概念**:分布式系统是由多台计算机组成的系统,这些计算机通过网络进行通信并协同完成...

    dubbo源码分析

    dubbo源码分析系列 知秋整理 原文博客:https://my.oschina.net/ywbrj042/home 更多精彩学习内容,请关注本人github 一 项目工程结构介绍 摘要: dubbo是目前国内最流行的分布式服务框架,已经俨然成为行业的标准...

Global site tag (gtag.js) - Google Analytics