Dubbo核心概念

简介: Dubbo核心概念

20200224095207613.png


20200224095359123.png20200224100630197.png


节点角色规范


节点 角色规格
Provider 提供者公开远程服务
Consumer 消费者致电远程服务
Registry 注册表负责服务发现和配置
Monitor 监视器计算服务调用的数量和耗时
Container 容器管理服务的生命周期


服务关系


Container负责启动,加载和运行服务Provider。

ProviderRegister在启动时向其注册服务。

Consumer从Register启动时开始订阅所需的服务。

Register将Providers列表返回Consumer,当它更改时,Register将Consumer通过长连接将更改的数据推送到。

ConsumerProvider根据软负载平衡算法选择s 之一并执行调用,如果失败,它将选择另一个Provider。

两者Consumer和Provider都会计算内存中调用服务的次数和耗时,并将统计信息发送到Monitor每分钟。


Dubbo具有以下功能:连接性,鲁棒性,可伸缩性和可升级性。


连接性


Register负责注册和搜索服务地址(例如目录服务),Provider并且Consumer仅在启动期间与注册表交互,并且注册表不会转发请求,因此压力较小

“监视器”负责计算服务调用的数量和耗时,统计信息将首先在Provider和Consumer的内存中汇总,然后发送到Monitor

“提供商”将服务注册到“注册”,并将耗时的统计信息(不包括网络开销)报告给“监控器”

“消费者”从中获取服务提供商的地址列表,Registry根据LB算法直接致电提供商,向上报耗时的统计信息Monitor,其中包括网络开销

之间的连接Register,Provider并且Consumer是长连接,Moniter是一个例外

RegisterProvider通过长连接意识到存在,当断开连接时Provider,Register会将事件推送到Consumer

它不影响已经运行的实例Provider和Consumer甚至所有Register和Monitor趴下,因为Consumer得到的缓存Provider上榜

Register并且Monitor是可选的,Consumer可以Provider直接连接

 

坚固性


Monitor的停机时间不会影响使用情况,只会丢失一些采样数据

当数据库服务器出现故障时,Register可以通过检查其缓存将服务Provider列表返回到Consumer其中,但是新服务器Provider无法注册任何服务

Register 是一个对等集群,当任何实例出现故障时,它将自动切换到另一个集群

即使所有Register实例都发生故障,Provider并且Consumer仍然可以通过检查其本地缓存来进行通信

服务Provider是无状态的,一个实例的停机时间不会影响使用情况

Provider一个服务的所有s故障后,Consumer无法使用该服务,并无限地重新连接以等待服务Provider恢复


可扩展性


  • Register 是一个可以动态增加其实例的对等群集,所有客户端将自动发现新实例。
  • Provider是无状态的,它可以动态地增加部署实例,并且注册表会将新的服务提供者信息推送到Consumer


可升级性


当服务集群进一步扩展并且IT治理结构进一步升级时,需要动态部署,并且当前的分布式服务体系结构不会带来阻力。这是未来可能的架构:


20200224121812984.png


节点角色规范


节点 角色规格
Deployer 用于自动服务部署的本地代理
Repository 该存储库用于存储应用程序包
Scheduler 调度程序会根据访问压力自动增加或减少服务提供商
Admin 统一管理控制台
Registry 注册表负责服务发现和配置
Monitor 监控器计算服务呼叫时间和时间
相关文章
|
6月前
|
缓存 负载均衡 Dubbo
Dubbo中高可用的那些概念
Dubbo中高可用的那些概念
71 0
|
XML Dubbo 网络协议
Dubbo学习笔记(一)基本概念与简单使用
Dubbo学习笔记(一)基本概念与简单使用
Dubbo学习笔记(一)基本概念与简单使用
|
Dubbo Java 应用服务中间件
Dubbo概念和基本框架结构
Dubbo概念和基本框架结构
70 0
|
负载均衡 监控 Dubbo
Dubbo核心概念
Dubbo是一个分布式服务框架,以及SOA治理方案。其功能主要包括:高性能NIO通讯及多协议集成,服务动态寻址与路由,软负载均衡与容错,依赖分析与降级等。
|
6月前
|
Dubbo Java 应用服务中间件
微服务学习 | Springboot整合Dubbo+Nacos实现RPC调用
微服务学习 | Springboot整合Dubbo+Nacos实现RPC调用
|
30天前
|
Dubbo Java 应用服务中间件
Spring Cloud Dubbo:微服务通信的高效解决方案
【10月更文挑战第15天】随着信息技术的发展,微服务架构成为企业应用开发的主流。Spring Cloud Dubbo结合了Dubbo的高性能RPC和Spring Cloud的生态系统,提供高效、稳定的微服务通信解决方案。它支持多种通信协议,具备服务注册与发现、负载均衡及容错机制,简化了服务调用的复杂性,使开发者能更专注于业务逻辑的实现。
53 2
|
3月前
|
Dubbo Java 应用服务中间件
💥Spring Cloud Dubbo火爆来袭!微服务通信的终极利器,你知道它有多强大吗?🔥
【8月更文挑战第29天】随着信息技术的发展,微服务架构成为企业应用开发的主流模式,而高效的微服务通信至关重要。Spring Cloud Dubbo通过整合Dubbo与Spring Cloud的优势,提供高性能RPC通信及丰富的生态支持,包括服务注册与发现、负载均衡和容错机制等,简化了服务调用管理并支持多种通信协议,提升了系统的可伸缩性和稳定性,成为微服务通信领域的优选方案。开发者仅需关注业务逻辑,而无需过多关心底层通信细节,使得Spring Cloud Dubbo在未来微服务开发中将更加受到青睐。
85 0
|
1月前
|
Dubbo Java 应用服务中间件
Dubbo学习圣经:从入门到精通 Dubbo3.0 + SpringCloud Alibaba 微服务基础框架
尼恩团队的15大技术圣经,旨在帮助开发者系统化、体系化地掌握核心技术,提升技术实力,从而在面试和工作中脱颖而出。本文介绍了如何使用Dubbo3.0与Spring Cloud Gateway进行整合,解决传统Dubbo架构缺乏HTTP入口的问题,实现高性能的微服务网关。
|
2月前
|
Dubbo 应用服务中间件 Apache
Star 4w+,Apache Dubbo 3.3 全新发布,Triple X 领衔,开启微服务通信新时代
在 Apache Dubbo 突破 4w Star 之际,Apache Dubbo 团队正式宣布,Dubbo 3.3 正式发布!作为全球领先的开源微服务框架,Dubbo 一直致力于为开发者提供高性能、可扩展且灵活的分布式服务解决方案。此次发布的 Dubbo 3.3,通过 Triple X 的全新升级,突破了以往局限,实现了对南北向与东西向流量的全面支持,并提升了对云原生架构的友好性。
140 7
|
6月前
|
Dubbo Java 应用服务中间件
阿里巴巴资深架构师深度解析微服务架构设计之SpringCloud+Dubbo
软件架构是一个包含各种组织的系统组织,这些组件包括Web服务器,应用服务器,数据库,存储,通讯层),它们彼此或和环境存在关系。系统架构的目标是解决利益相关者的关注点。