阿里技术专家开源Apache Dubbo核心源码笔记,探索RPC框架的奥秘

前言

Dubbo是一个高性能、轻量级的开源Java RPC(远程过程调用)框架,使得应用可以通过高性能的RPC实现服务的输出和输入功能,并且可以和Spring框架无缝集成。它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。Dubbo被定义为面向云原生的下一代RPC服务框架。

Dubbo 3.0基于Dubbo 2.x演进而来,在保持原有核心功能特性的同时,Dubbo3在易用性、超大规模微服务实践、云原生基础设施适配、安全性等几大方向上进行了全面升级。

使用Dubbo的第一步就是定义Dubbo服务,服务在Dubbo中的定义就是完成业务功能的一组方法的集合,可以选择使用与某种语言绑定的方式定义,如在Java中Dubbo服务就是有一组方法的Interface接口,也可以使用语言中立的Protobuf Buffers IDL定义服务。

Dubbo的主要核心部件包括:

  1. 注册中心:例如Zookeeper,eureka,consul,etcd等,用于服务的注册和服务事件发布和订阅。注册中心的主要作用是动态加入,服务提供者可以动态的把自己暴露给其他消费者(服务提供者启动服务会将自己的ip地址与端口号注册到注册中心,消费者在注册中心即可找服务提供者而不需要消费者在自己的服务中进行消费者配置)。此外,注册中心还支持动态发现,消费者可以动态感知新的配置、路由规则以及新的服务提供者,无需重启服务器。注册中心还支持动态调整,新参数会自动更新到所有相关的服务节点。
  2. 服务提供者(Provider):负责暴露服务方称之为“服务提供者”。
  3. 服务消费者(Consumer):调用远程服务方称之为“服务消费者”。
  4. 监控中心:主要负责监控统计调用次数和调用时间。

这些部件共同构成了Dubbo的核心。如需获取更多关于Dubbo的信息,建议咨询专业技术人员或者查看Dubbo官网。

下面我们具体谈谈通过研究Dubbo框架的实现原理,到底能学到什么。

从基础、高级和实践三部分给大家进行讲解:

需要获取的小伙伴可以跳转文章末尾获取此资料

第一部分基础篇

首先从整体上讲解使用Dubbo搭建的系统由哪些模块组成,各模块相互之间的调用关系是怎么样的,然后基于本书的Demo讲解如何使用Dubbo

阿里技术专家开源Apache Dubbo核心源码笔记,探索RPC框架的奥秘_第1张图片 阿里技术专家开源Apache Dubbo核心源码笔记,探索RPC框架的奥秘_第2张图片

第1章Dubbo基础

阿里技术专家开源Apache Dubbo核心源码笔记,探索RPC框架的奥秘_第3张图片

第二部分高级篇

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

阿里技术专家开源Apache Dubbo核心源码笔记,探索RPC框架的奥秘_第4张图片 阿里技术专家开源Apache Dubbo核心源码笔记,探索RPC框架的奥秘_第5张图片 阿里技术专家开源Apache Dubbo核心源码笔记,探索RPC框架的奥秘_第6张图片 阿里技术专家开源Apache Dubbo核心源码笔记,探索RPC框架的奥秘_第7张图片 阿里技术专家开源Apache Dubbo核心源码笔记,探索RPC框架的奥秘_第8张图片

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

阿里技术专家开源Apache Dubbo核心源码笔记,探索RPC框架的奥秘_第9张图片

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

阿里技术专家开源Apache Dubbo核心源码笔记,探索RPC框架的奥秘_第10张图片

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

阿里技术专家开源Apache Dubbo核心源码笔记,探索RPC框架的奥秘_第11张图片

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

阿里技术专家开源Apache Dubbo核心源码笔记,探索RPC框架的奥秘_第12张图片

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

阿里技术专家开源Apache Dubbo核心源码笔记,探索RPC框架的奥秘_第13张图片

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

阿里技术专家开源Apache Dubbo核心源码笔记,探索RPC框架的奥秘_第14张图片

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

阿里技术专家开源Apache Dubbo核心源码笔记,探索RPC框架的奥秘_第15张图片

第9章Dubbo并发控制

阿里技术专家开源Apache Dubbo核心源码笔记,探索RPC框架的奥秘_第16张图片

第10章Dubbo 隐式参数传递

阿里技术专家开源Apache Dubbo核心源码笔记,探索RPC框架的奥秘_第17张图片

第11章Dubbo 全链路异步

阿里技术专家开源Apache Dubbo核心源码笔记,探索RPC框架的奥秘_第18张图片

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

阿里技术专家开源Apache Dubbo核心源码笔记,探索RPC框架的奥秘_第19张图片

第13章Dubbo 协议与网络传输

阿里技术专家开源Apache Dubbo核心源码笔记,探索RPC框架的奥秘_第20张图片

第三部分实践篇

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

阿里技术专家开源Apache Dubbo核心源码笔记,探索RPC框架的奥秘_第21张图片

第14章Dubbo实践

阿里技术专家开源Apache Dubbo核心源码笔记,探索RPC框架的奥秘_第22张图片

文末

如果你需要完整版PDF学习资源请扫描下方名片100%获取免费下载方式!

点击下方名片

你可能感兴趣的:(dubbo,apache,后端,java,笔记)