Dubbo 是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring框架无缝集成。
主要核心部件:
- Remoting: 网络通信框架,实现了 sync-over-async 和 request-response 消息机制.
- RPC: 一个远程过程调用的抽象,支持负载均衡、容灾和集群功能
- Registry: 服务目录框架用于服务的注册和服务事件发布和订阅
Dubbo工作原理
-
Provider
- 暴露服务方称之为“服务提供者”。
-
Consumer
- 调用远程服务方称之为“服务消费者”。
-
Registry
- 服务注册与发现的中心目录服务称之为“服务注册中心”。
-
Monitor
- 统计服务的调用次调和调用时间的日志服务称之为“服务监控中心”。
(1) 连通性:
- 注册中心负责服务地址的注册与查找,相当于目录服务,服务提供者和消费者只在启动时与注册中心交互,注册中心不转发请求,压力较小
- 监控中心负责统计各服务调用次数,调用时间等,统计先在内存汇总后每分钟一次发送到监控中心服务器,并以报表展示
- 服务提供者向注册中心注册其提供的服务,并汇报调用时间到监控中心,此时间不包含网络开销
- 服务消费者向注册中心获取服务提供者地址列表,并根据负载算法直接调用提供者,同时汇报调用时间到监控中心,此时间包含网络开销
- 注册中心,服务提供者,服务消费者三者之间均为长连接,监控中心除外
- 注册中心通过长连接感知服务提供者的存在,服务提供者宕机,注册中心将立即推送事件通知消费者
- 注册中心和监控中心全部宕机,不影响已运行的提供者和消费者,消费者在本地缓存了提供者列表
- 注册中心和监控中心都是可选的,服务消费者可以直连服务提供者
(2) 健状性:
- 监控中心宕掉不影响使用,只是丢失部分采样数据
- 数据库宕掉后,注册中心仍能通过缓存提供服务列表查询,但不能注册新服务
- 注册中心对等集群,任意一台宕掉后,将自动切换到另一台
- 注册中心全部宕掉后,服务提供者和服务消费者仍能通过本地缓存通讯
- 服务提供者无状态,任意一台宕掉后,不影响使用
- 服务提供者全部宕掉后,服务消费者应用将无法使用,并无限次重连等待服务提供者恢复
(3) 伸缩性:
- 注册中心为对等集群,可动态增加机器部署实例,所有客户端将自动发现新的注册中心
- 服务提供者无状态,可动态增加机器部署实例,注册中心将推送新的服务提供者信息给消费者
相关推荐
dubbo 服务框架高清视频 内含zookeeper&Linux;&redis;... dubbo 服务框架高清视频 内含zookeeper&Linux;&redis;...
【标题】"淘宝DUBBO服务框架1"与【描述】"taobao DUBBO服务框架 还有2"一起揭示了本次讨论的核心——淘宝的DUBBO服务框架。DUBBO是阿里巴巴开源的一个高性能、轻量级的服务治理框架,主要用于实现分布式服务的调用与...
Dubbo服务框架是一个由阿里巴巴开源的高性能Java RPC框架,它在阿里巴巴集团内部广泛使用,并且在开源社区中也获得了极大的关注。本资料包包含了Dubbo服务框架相关的面试题及答案,旨在帮助求职者或者开发者更好地...
《Dubbo框架源码解析深度探索》 Dubbo,作为阿里巴巴开源的一款高性能、轻量级的服务治理框架,已经成为Java世界中分布式服务的重要选择。本文将深入探讨Dubbo的核心概念、设计模式以及源码实现,旨在帮助读者理解...
Dubbo分布式服务框架
在Dubbo框架中,Zookeeper常被用作服务注册与发现的中心节点。在案例中,我们使用的是zookeeper-3.5.3-beta版本,这代表我们需要先搭建Zookeeper环境,确保服务提供者和消费者能正确地注册和查找服务。 接下来,...
在压缩包中的`dubbo-dubbo-3.2.11`文件夹内,包含了Dubbo框架的源代码,这对于学习和研究Dubbo的工作原理非常有帮助。源码阅读可以帮助我们理解Dubbo如何实现服务的注册、发现、调用等核心功能,以及其内部的设计...
《Dubbo服务框架 v2.6.12.zip——深入解析与应用》 Dubbo,作为阿里巴巴开源的一款高性能、轻量级的服务治理框架,自2008年诞生以来,便在分布式系统领域赢得了广泛的关注和应用。本次我们关注的是其v2.6.12版本,...
taobao DUBBO服务框架 有1
Dubbo服务框架是阿里巴巴开源的一款高性能、轻量级的Java RPC框架,主要用于构建微服务架构。版本v3.1.10带来了许多增强特性和优化,使得它在现代分布式系统中的应用更加广泛和稳定。这个压缩包包含了Dubbo 3.1.10的...
Dubbo服务框架是阿里巴巴开源的一...总的来说,"Dubbo服务框架 v2.7.22.zip"是一个全面的资源,涵盖了Dubbo框架的所有核心组件,无论你是想要学习、研究还是在实际项目中使用Dubbo,这个压缩包都将是你不可或缺的工具。
dubbo框架有什么用 把一个大的项目拆分成多个项目,由原来的一个项目处理工作,变为多个项目一同处理工作,提高工作效率 dubbo框架和传统框架有什么区别 传统框架,无论部署多少份代码,每单个请求,都必须经过...
Dubbo是一个由阿里巴巴开源的高性能服务框架,它主要是为了解决分布式服务的调用问题。通过使用RPC(Remote Procedure Call,远程过程调用)技术,Dubbo使得应用可以方便地进行服务的输出和输入。Dubbo最大的特点是...
Dubbo是中国阿里巴巴开源的一款高性能、轻量级的Java分布式服务框架,它主要为了解决企业应用之间的服务调用问题,提供了服务注册、服务发现、负载均衡、容错处理等一系列完整的服务治理功能。在这个"Dubbo分布式...
dubbo框架及dubbo环境搭建 Dubbo 框架是一种分布式服务框架,旨在提供高性能和透明化的 RPC 远程服务调用方案,以及 SOA 服务治理方案。 Dubbo 框架的核心部分包含远程通讯、集群容错和自动发现三个部分。 在 ...
《Dubbo服务框架面试专题及答案》文档是一个深入解析Dubbo服务框架的资源集合,它旨在帮助求职者或开发者充分准备与Dubbo相关的面试问题。Dubbo作为阿里巴巴开源的高性能、轻量级的服务治理框架,广泛应用于分布式...
Dubbo是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的RPC实现服务的输出和输入功能,可以和Spring 框架无缝集成。 Dubbo主要核心部件: Remoting:网络通信框架,实现了sync-over-async和...
dubbo框架开发介绍
【Dubbo服务框架面试专题及答案整理文档】 在IT行业中,Java编程语言一直是企业级应用开发的首选,而Dubbo作为阿里巴巴开源的一款高性能、轻量级的服务框架,它在Java分布式系统中的应用广泛。这份“Dubbo服务框架...
Dubbo是中国阿里巴巴公司开源的一款高性能、轻量级的Java服务治理框架,它主要为企业级应用提供RPC(远程过程调用)服务。这个压缩包文件包含了关于Dubbo分布式框架的学习资料和实例,对于深入理解并掌握Dubbo有极大...