dubbo源码分析
博主目前就职于阿里巴巴 菜鸟。本专栏主要介绍dubbo发布服务到引用服务全过程源码分析,各个模块源码分析
休息的风
工作,生活
展开
-
dubbo 源码学习笔记 (一) —— ExtensionLoader和URL
ExtensionLoader源码实现 SPI扩展 java SPI扩展机制原创 2017-07-12 14:10:41 · 700 阅读 · 1 评论 -
dubbo 源码学习笔记 (二) —— dubbo发布服务的过程
dubbo基础类ExtensionLoader和URL贯穿整个框架,掌握这两个类的思想和源码,就相当于对dubbo有了初步的认识。接着,我们来分析一下dubbo是如何发布一个服务的。以ServiceConfig.doExportUrlsFor1Protocol为起点,在使用spring容器启动时,会调用该方法进行发布服务的一系列操作。简单来说,发布的过程可以简化为,服务转换为invoker->原创 2017-10-12 17:40:28 · 1068 阅读 · 2 评论 -
dubbo 源码学习笔记 (三) —— dubbo引用服务的过程
与dubbo服务发布相对的,是引用服务进行调用的过程,这个很多步骤都是与服务发布相对的,但是也有特有的地方,比如,负载均衡 ,集群容错等。这篇博客,我们主要关注dubbo服务调用的一个核心过程。原创 2017-10-12 17:59:31 · 1798 阅读 · 0 评论 -
dubbo 源码学习笔记 (四) —— 配置模块
对于dubbo的配置,采用的是spring的一个解析配置文件的机制。与spring是连接的,也是解析成BeanDefinition,让spring管理生成对象放入spring容器中。原创 2017-10-14 16:55:14 · 371 阅读 · 0 评论 -
dubbo 源码学习笔记 (五) —— 注册中心模块
dubbo的注册中心模块,封装服务地址的注册与发现,以服务URL为中心,扩展接口为RegistryFactory,Registry,RegistryService。原创 2017-10-14 16:54:32 · 477 阅读 · 0 评论 -
dubbo 源码学习笔记 (六) —— 集群模块
dubbo集群模块主要实现了集群容错和负载均衡功能。原创 2017-10-14 16:58:30 · 399 阅读 · 0 评论 -
dubbo 源码学习笔记 (七) —— 远程调用模块
dubbo远程调用模块,围绕着Invoker展开,调用方由DubboInvoker实现Invoker接口,并持有远程通讯的客户端。发送Invocation到服务端,服务端处理后,把结果返回。DubboInvoker包装为RpcResult,这是最里层做的事情。外层DubboInvoker还由ProtocolFilterWrapper进行包装,生成一个调用链;再由ProtocolListenerWrapper包装,增加监听;最后通过JavassistProxyFactory生成代理对象。实现方由Javassi原创 2017-10-14 16:59:00 · 415 阅读 · 0 评论 -
dubbo 源码学习笔记 (八) —— 远程通讯模块
dubbo的远程通讯模块的介绍,将从两条主线分别讲述。首先是从Exchanges->Transports->Netty打开通道,建立连接;接着是MultiMessageHandler->HeartbeatHandler->AllChannelHandler->DecodeHandler->HeaderExchangeHandler->ExchangeHandlerAdapter这样一条handler处理线;原创 2017-10-14 17:00:36 · 438 阅读 · 0 评论