奉若神明!阿里技术专家开源 ApacheDubbo 核心源码笔记

前言
Dubbo 是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring 框架无缝集成。
主要的核心部件:
Remoting: 网络通信框架,实现了 sync-over-async 和 request-response 消息机制
RPC: 一个远程过程调用的抽象,支持负载均衡、容灾和集群功能
Registry: 服务目录框架用于服务的注册和服务事件发布和订阅
为何要研究 Apache Dubbo 的实现原理
而在微服务大行其道的今天,RPC 框架作为微服务之间通信的一种手段,其在微服务架构中占有一席之地,Apache Dubbo (后面简称 Dubbo)则是 RPC 框架中比较优秀的代表,为了更好地使用它,其实现原理自然值得我们去探究。
下面我们具体谈谈通过研究 Dubbo 框架的实现原理,到底能学到什么。
从基础、高级和实践三部分给大家进行讲解:需要获取的小伙伴可以看我主页即可获取这份阿里内部 dubbo 资料!
第一部分基础篇
首先从整体上讲解使用 Dubbo 搭建的系统由哪些模块组成,各模块相互之间的调用关系是怎么样的,然后基于本书的 Demo 讲解如何使用 Dubbo


第 1 章 Dubbo 基础

第二部分高级篇
主要讲解 Dubbo 框架内部的实现原理,包含支撑 Dubo 框架的适配器类原理、动态编译原理、增强 SPI 原理、消费端的泛化调用实现原理、消费端异步调用与服务提供端的异步执行、Dubbo 框架的线程模型、消费端负载均衡策略、消费端集群容错策略、并发控制原理、Dubbo 网络协议等





第 2 章 Dubbo 框架内核原理剖析

第 3 章远程服务 发布与引用流程剖析

第 4 章 Directory 目录与 Router 路由服务

第 5 章 Dubbo 消费端服务 mock 与服务降级策略原理

第 6 章 Dubbo 集群容错与负载均衡策略

第 7 章 Dubbo 线程模型与线程池策略

第 8 章 Dubbo 如何实现泛化引用

第 9 章 Dubbo 并发控制

第 10 章 Dubbo 隐式参数传递

第 11 章 Dubbo 全链路异步

第 12 章本地服务暴露与引用原理

第 13 章 Dubbo 协议与网络传输

第三部分实践篇
主要探讨如何使用 Arthas 和一些 Demo 来为研究 Dubbo 框架原理提供方便,并且讲解如何基于 CompletableFuture 和 Netty 模拟 RPC 同步与纯异步调用。

第 14 章 Dubbo 实践

内容就不给大家做过多的展示了,需要获取的小伙伴可以看我主页即可获取!
版权声明: 本文为 InfoQ 作者【Java~~~】的原创文章。
原文链接:【http://xie.infoq.cn/article/ca72e79b54c873997eee634f1】。未经作者许可,禁止转载。
评论