`
lfc_jack
  • 浏览: 144780 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类

dubbo原理以及调用过程

 
阅读更多




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

调用流程
0.服务容器负责启动,加载,运行服务提供者。
1.服务提供者在启动时,向注册中心注册自己提供的服务。
2.服务消费者在启动时,向注册中心订阅自己所需的服务。
3.注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接推送变更数据给消费者。
4.服务消费者,从提供者地址列表中,基于软负载均衡算法,选一台提供者进行调用,如果调用失败,再选另一台调用。
5.服务消费者和提供者,在内存中累计调用次数和调用时间,定时每分钟发送一次统计数据到监控中心




Dubbo优缺点


优点:
1. 透明化的远程方法调用
- 像调用本地方法一样调用远程方法;只需简单配置,没有任何API侵入。
2. 软负载均衡及容错机制
- 可在内网替代nginx lvs等硬件负载均衡器。
3. 服务注册中心自动注册 & 配置管理
-不需要写死服务提供者地址,注册中心基于接口名自动查询提供者ip。
使用类似zookeeper等分布式协调服务作为服务注册中心,可以将绝大部分项目配置移入zookeeper集群。
4. 服务接口监控与治理
-Dubbo-admin与Dubbo-monitor提供了完善的服务接口管理与监控功能,针对不同应用的不同接口,可以进行 多版本,多协议,多注册中心管理。

缺点:

只支持JAVA语言
  • 大小: 91.1 KB
分享到:
评论

相关推荐

    dubbo原理以及测试实例

    服务提供者会将自己的服务暴露给服务消费者,这个过程通常涉及到服务的封装、序列化以及网络通信。 2. **Consumer**:服务消费者,负责调用远程服务的应用。服务消费者并不直接知道服务提供者的具体地址,而是通过...

    Dubbo基本原理机制

    Dubbo 是一个分布式服务框架,致力于提供高性能和透明化的 RPC 远程服务调用方案,以及 SOA 服务治理方案。Dubbo 的基本原理机制可以分为以下几个部分: 1. 客户端调用远程接口时,生成一个唯一的 ID,并将方法调用...

    服务治理中间件 dubbo原理解析

    服务治理中间件Dubbo原理解析: ### SPI简单介绍 SPI(Service Provider Interface)是一种服务发现机制,允许第三方开发者为特定接口添加实现,而不需要修改或重新编译现有代码。在Java中,SPI主要通过JDK自带的...

    Spring整合Dubbo框架过程及原理解析

    本文主要介绍了Spring整合Dubbo框架的过程和原理分析,包括Dubbo架构、服务提供者开发、服务消费者开发、服务注册中心、Dubbo原理分析和Spring整合Dubbo框架等。通过本文,读者可以了解Dubbo框架的原理和应用场景,...

    Dubbo RPC框架原理解析和源码

    服务拦截器则提供了更底层的访问控制,可以对服务调用过程进行修改或增强。 **六、容错机制** Dubbo提供了多种容错策略,如Fail-fast(快速失败)、Fail-over(重试)、Fail-safe(安全失败)、Fallback(降级)等...

    dubbo例子 2台机器亲测通过

    《Dubbo实例详解:双机部署亲测...对于初学者,这是一个很好的起点,可以帮助理解Dubbo的工作原理和使用方式。而对于经验丰富的开发者,这也可以作为一个快速部署的模板,便于在实际项目中快速集成和测试Dubbo服务。

    dubbo分布式系统Rpc调用框架

    本文将深入探讨Dubbo的核心特性,包括其与Spring的整合、服务导出、服务调用、可扩展机制SPI以及基本和高级应用。 首先,让我们从35-Dubbo框架介绍与手写模拟Dubbo开始。Dubbo由阿里巴巴开源,其设计目标是提供一个...

    Dubbo源码以及所需jar文件

    在提供的压缩包文件中,`dubbo-2.5.2.jar`是Dubbo的核心库,包含了Dubbo的全部实现,包括服务提供者和服务消费者的API,以及各种协议、注册中心的实现。使用这个jar文件,开发者可以在项目中直接引用Dubbo的类和方法...

    Dubbo视频_百度云.zip

    3. **Dubbo原理**:深入理解Dubbo的工作机制,包括服务注册与发现、负载均衡、容错机制(如Failsafe、Failover、Failfast、Failsafe、Fallback、Forced等)、调用链路监控等。这些原理有助于优化服务性能和稳定性。 ...

    dubbo+zookeeper缓存方案

    以下将详细阐述这个方案的具体实现、工作原理以及其背后的思考。 首先,我们要理解 Dubbo 和 Zookeeper 在这个方案中的角色。Dubbo 是一个高性能、轻量级的 Java RPC 框架,它提供了服务发现、负载均衡、容错等多种...

    dubbo核心原理解析.pdf

    在Spring容器解析配置文件的过程中,它会根据标签名(如<dubbo:application name="dubbo-provider-user"></dubbo:application>)来查找之前注册的对应Dubbo标签的Map集合中的value,即DubboBeanDefinitionParser对象...

    dubbo源码分析系列

    - RPC(Remote Procedure Call)原理:深入解析Dubbo的RPC过程,包括请求构建、序列化、网络传输和反序列化响应等步骤。 - Netty通信框架:Dubbo如何利用Netty实现高效的网络通信,包括NIO模型、线程模型和缓冲区...

    dubbo2.0源码解读

    《Dubbo 2.0 源码解读》是一份深度剖析Dubbo核心机制和技术细节的资料,旨在帮助开发者深入理解这一著名Java微服务框架的工作原理。以下是对这份资料主要知识点的详细阐述: 1. **源码阅读路径**:源码阅读是提升...

    整合dubbo、maven、spring、mybatis的服务提供者消费者调用错误示例

    总的来说,解决此类问题需要对整个系统架构有深入的理解,包括Dubbo的工作原理、Spring的依赖注入以及MyBatis的SQL映射。通过细致的排查和调试,通常可以找出问题的根源并解决。在开发过程中,良好的日志记录和测试...

    dubbo-admin-2.6.0.7z

    在本文中,我们将深入探讨Dubbo Admin的功能、工作原理以及如何使用它来提升服务治理的效率。 一、Dubbo Admin的核心功能 1. **服务发现与管理**:Dubbo Admin能够展示所有注册到注册中心的服务,包括服务提供者和...

    Dubbo框架RPC实现原理

    Dubbo作为SOA(面向服务的架构)治理方案的重要组件,使得服务调用过程中的网络编程更加简洁高效。 #### Dubbo的RPC基本功能 RPC(Remote Procedure Call)远程过程调用是实现分布式系统中不同服务间通讯的一种方式...

    Dubbo培训与实战

    2. **集群容错(Cluster Fault Tolerance)**:Dubbo支持基于接口方法的透明远程过程调用,包括多协议支持、软负载均衡、失败容错、地址路由、动态配置等集群支持功能。 3. **自动发现(Automatic Discovery)**:...

    dubbo入门学习框架源码

    Dubbo的主要目标是提供一个高性能、透明化的RPC(远程过程调用)框架,使得服务消费方可以像调用本地方法一样调用远程服务。它具备服务注册与发现、负载均衡、容错、调用链跟踪等核心功能,实现了服务之间的高效通信...

Global site tag (gtag.js) - Google Analytics