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

简介: Dubbo 是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring 框架无缝集成。

前言

Dubbo 是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring 框架无缝集成。

主要的核心部件:

  • Remoting: 网络通信框架,实现了 sync-over-async 和 request-response 消息机制
  • RPC: 一个远程过程调用的抽象,支持负载均衡、容灾和集群功能
  • Registry: 服务目录框架用于服务的注册和服务事件发布和订阅

为何要研究Apache Dubbo的实现原理

而在微服务大行其道的今天,RPC框架作为微服务之间通信的一种手段,其在微服务架构中占有一席之地,Apache Dubbo (后面简称Dubbo)则是RPC框架中比较优秀的代表,为了更好地使用它,其实现原理自然值得我们去探究。

下面我们具体谈谈通过研究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实践

内容就不给大家做过多的展示了,需要获取的小伙伴可以点击此处来获取就可以了!

相关文章
|
3月前
|
存储 Java 测试技术
阿里巴巴java开发手册
这篇文章是关于阿里巴巴Java开发手册的整理,内容包括编程规约、异常日志、单元测试、安全规约、MySQL数据库使用以及工程结构等方面的详细规范和建议,旨在帮助开发者编写更加规范、高效和安全的代码。
|
5月前
|
消息中间件 存储 NoSQL
阿里开源中间件一览
阿里开源中间件一览
351 2
|
存储 消息中间件 人工智能
阿里是如何使用分布式架构的?阿里内部学习手册分享
为什么要使用分布式架构?分布式架构解决了互联网应用的两大难题:高并发和高可用。高并发指服务器并发处理客户端请求的数量大,而高可用指后端服务能始终处于可用状态。
|
6月前
|
消息中间件 存储 架构师
鼓掌!阿里技术官亲荐“架构修炼宝典”,从基础到源码,一站到底
作为一名程序员,尽早确定自己的发展方向和路线是非常重要的,架构师则是其中的方向之一。很多程序员,奋斗大半辈子,是为了让自己成为一名合格且优秀的架构师,但是成为架构师并非一件易事,它对于技术方面的要求也是非常高的。
|
Java
【重磅推荐】阿里巴巴Java开发手册 1.4.0
【重磅推荐】阿里巴巴Java开发手册 1.4.0
2018 0
|
移动开发 前端开发 数据可视化
《Bakery 产品演示平台的探索与实践-念响》演讲视频 + 文字版
《Bakery 产品演示平台的探索与实践-念响》演讲视频 + 文字版
248 0
|
Cloud Native 安全 Java
「开源人说」第二期重磅上线!一起走进《从开源中来,到开源中去》
你是否思考过开源的意义?是获取免费种子用户?还是技术贡献社会价值? 开源意义千人千面,最重要的是参与进来和分享出去。贯彻开源精神,龙蜥社区从Linux开源而来,CentOS替换出发,捐赠给开放原子这样的第三方中立开源基金会,到开源中去,最后落地千行百业中去产生实际价值。从开源中来,到开源中去,龙蜥社区曾走过一条怎样的开源之路?
181214 11
「开源人说」第二期重磅上线!一起走进《从开源中来,到开源中去》
|
容器 Kubernetes Perl
从零开始入门 K8s| 阿里技术专家详解 K8s 核心概念
作者| 阿里巴巴资深技术专家、CNCF 9个 TCO 之一 李响 一、什么是 Kubernetes Kubernetes,从官方网站上可以看到,它是一个工业级的容器编排平台。Kubernetes 这个单词是希腊语,它的中文翻译是“舵手”或者“飞行员”。
16342 0
|
人工智能 开发者 Python
模型社区实战训练营首开,开源让代码更有趣!
阿里云开发者学堂联合modelscope社区推出了模型实战系列训练营,培养AI开发者从各种模态的模型选择,只需要懂得python,也可以玩转人工智能模型。
|
消息中间件 Kubernetes Cloud Native
致阿里巴巴中间件读者:2021年热门技术文章合集,建议收藏
我们评选出了【最受开发者欢迎】和【最具行业影响力】的共 20 篇文章,给过去的 2021 年划上一个完满的句号,哪一篇是你最喜爱的文章呢?
761 7
致阿里巴巴中间件读者:2021年热门技术文章合集,建议收藏