Dubbo源码学习一、概述Dubbo是一款高性能、轻量级基于Java的RPC开源框架。平时使用的非常多。但仅仅使用很难了解背后的原理,更不用提经常出现在面试中,这篇文章主要从源码的角度解析 dubbo 比较重要的三个模块:服务导出、服务引入、负载均衡。还有很多其他重要模块如:服务路由、消费者集群、通信协议、服务治理等等,由于篇幅原因将在以后的其他博客分享。1.1 主要组件Dubbo 在使用上有5个
转载
2024-04-09 09:45:20
57阅读
辅助链接Dubbo系列之 (一)SPI扩展 Dubbo系列之 (二)Registry注册中心-注册(1)Dubbo系列之 (三)Registry注册中心-注册(2)Dubbo系列之 (四)服务订阅(1)Dubbo系列之 (五)服务订阅(2)Dubbo系列之 (六)服务订阅(3)RegistryDirectory当RegistryDirectory#substribe()方法被RegistryPro
转载
2024-05-07 14:08:36
41阅读
【一】:配置项注册中心地址:zookeeper://ip:端口<dubbo:registry address="注册中心的地址" check="启动时检查注册中心是否存在" register="在该注册中心上服务是否暴露"/>View Code【二】:配置解析器-->具体解析器为com.alibaba.dubbo.config.spring.schema.DubboNamespa
转载
2023-07-04 10:03:37
76阅读
前言现在SpringCloud Alibaba 十分热门, dubbo作为阿里的招牌微服务相关的框架,自然整合进入了SpringCloud了. 我找了下官网发现如下的maven依赖.<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-st
转载
2024-04-03 16:07:09
112阅读
1、dubbo环境1.引入dubbo<!-- 引入dubbo -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>dubbo</artifactId>
<version>2.6.2</version>
<
转载
2024-05-11 12:53:40
74阅读
@Retry注解是Spring提供的一个重试注解,使用简单(这里是为了分析其原理,其实个人认为guava的重试好用多了)。
原创
2023-04-03 12:33:38
240阅读
上一节,我们了解到Spring的基础容器XmlBeanFactory是如果使用的,并且分析了Spring容器的基本原理。那我们要怎样进行Spring的深入分析呢?Spring源码是一个很复杂的框架,因此我们抓住一条主干线进行分析,我们需要从ApplicationContext.xml开始入手。ApplicationContext.xml是通过ClassPathResource这个类加载的。接下来我
转载
2024-06-28 20:06:55
105阅读
在之前的文章中介绍了Dubbo的出现背景以及使用方式,下面我们通过源码的方式来分析一下Dubbo的架构。1、准备在分析探索Dubbo架构原理之前,我们需要准备一下环境,用于后面我们来分析dubbo的架构。1.1 ZookeeperDubbo使用Zookeeper为注册中心。所以需要在本地启动zookeeper,作为Dubbo的注册中心。启动Zookeeper服务:用于dubbo的注册中心。启动Zo
转载
2024-04-05 13:50:58
61阅读
前言最近在看RPC框架,选择先看dubbo,再看netty,最后手写一个RPC的学习路线,结合雷神关于dubbo的讲解,对源码流程进行一个简单的记录原理所谓RPC就是远程服务调用的意思,那么dubbo怎么完成远程调用的呢?原理图如下[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9fEwo2Az-1623312993257)(java源码解析之dubbo.assets
转载
2024-04-03 08:57:35
41阅读
接下来的几篇文章开始介绍Dubbo的源码,本章介绍Dubbo的启动原理。(本来想把Dubbo服务的发布原理一起放上的,奈何微信公众号对字数有限制)4. Dubbo框架设计官方文档:http://dubbo.apache.org/zh-cn/docs/dev/design.html4.1 Business部分在Business部分,只有一个层面:Service对于Service层,只是提
转载
2024-03-19 10:48:22
11阅读
一 前言 之前的文章描述了如何简单的搭建dubbo服务,会用只是迈入了初级阶段。要想更好的理解原理,只能通过源码。为什么要看源码呢?因为好的源码是一些大牛级别的工程师呕心沥血的结晶,这里面渗透着好多东西,比如设计模式,算法,以及我们可以更清楚的从开发者的角度去理解代码。所以在接下来的时间里会记录些dubbo核心源码的心得。二 dubbo核心模块 &n
转载
2024-02-13 12:15:25
35阅读
1.SPIhttp://dubbo.apache.org/zh-cn/docs/source_code_guide/dubbo-spi.html介绍: SPI 全称为 Service Provider Interface,是一种服务发现机制。 SPI 的本质是将接口实现类的全限定名配置在文件中,并由服务加载器读取配置文件,加载实现类。这样可以在运行时,动态为接口替换实现类。 Dubbo重写了Ja
转载
2024-04-30 18:38:01
39阅读
Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案,是阿里巴巴的一个开源项目。在这里希望花几个月的时间,在Dubbo官网的开发者指南和网上各种已有的分析资料的帮助下,通过阅读源码,学习并领悟到dubbo架构设计的精妙之处。 随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对
转载
2024-05-19 21:28:45
16阅读
前言dubbo是微服务架构常用的框架,但是光会用是不行的,还要深入了解它的原理,学习它的思想和书写规范。本文是初步了解dubbo内核,附部分源码解读。后续会深入了解dubbo源码。一、总结 1.dubbo简介dubbo内核:由“微服务+插件”组成。dubbo内核的构成:SPI、Adaptive、Wrapper和Activate。SPI是微内核,其他三个是插件。dubbo的
转载
2024-04-08 10:03:11
55阅读
本文介绍Dubbo服务的调用原理。6. Dubbo的服务调用流程Dubbo的调用链在官方文档中也有描述:http://dubbo.apache.org/zh-cn/docs/dev/design.html以源码解析为标准,分析调用过程xxxService.xxxMethod();当远程调用方法时,经历了如下过程6.1 代理对象调用服务上述的xxxService其实是一个代理对象,它基于
转载
2024-04-15 09:38:27
46阅读
IOC 是 spring 中最最最最核心的部分。IOC 即控制反转,就是说资源不由使用资源的双方管理,而由不使用资源的第三方(IOC容器)管理。对象不再由使用者来创建(比如 new)和管理。它主要有两个好处:资源集中管理,实现资源的可配置和易管理降低使用双方的依赖程度,也就是解耦IOC 容器的最顶层接口是 BeanFactory,也就是说,只要实现了&nbs
转载
2024-03-04 22:51:46
40阅读
核心类Retryer构造函数 1.检查尝试时间限制不能为空 2.停止策略stopStrategy不能为空 3.暂停策略waitStrategy不能为空 4.阻塞策略blockStrategy不能为空 5.rejectPredicate拒绝预测不能为空 6.监听器listeners不能为空+++++++++++++++++++++++++++++++++++++++++++++++++++++++
原创
2021-11-28 18:42:27
369阅读
最近听到有朋友公司用这个Dubbo,正好想了解一下源码。经过一小段时间分析,发现知识点非常多,很有价值。包括:动态代理,spring整合,各种设计模式,线程池,锁,netty这样基于nio的tcp框架,协议的设计,当然最重要的是一种解决问题的思路,就吧这些体会记录下来: 网上已经看到一些源码分析,总感觉缺少点什么,看完文章还是感觉
转载
2024-05-03 07:53:07
47阅读
1. ReferenceBean 这个bean实现了InitializingBean接口2. 这个类实现了接口的afterPropertiesSet()这个方法,在spring容器启动时,property设置完之后就会调用实现了InitializingBean接口的afterPropertiesSet方法 2.1 方法里分别对consumerConfig,applicationConfig,Mo
转载
2024-06-08 10:20:54
25阅读
dubbo框架设计一、dubbo框架整体设计二、各层说明三、dubbo工程模块分包四、依赖关系五、调用链 本系列文件基于 dubbo 2.7.14 做源码参考,欢迎各位小伙伴一起探讨交流,有问题,欢迎评论区进行留言。好了,废话不多说,下面直接上硬货。在阅读 dubbo 源码时,建议小伙伴们详细了解与使用一下 dubbo 的 SPI 机制,这样在阅读 dubbo 源码时,才不会迷路,可以参照下面资
转载
2024-03-27 09:51:42
22阅读