奉若神明!阿里技术专家开源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实践

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

相关文章
|
Java 数据库 容器
2018年阿里巴巴重要开源项目汇总(资料参考)
云栖社区特在2018年年末,将阿里巴巴的一些重要的开源项目进行整理,希望对大家有所帮助。
|
传感器 人工智能 Oracle
云+社区技术沙龙丨解析腾讯最新开源项目背后的技术栈
云+社区技术沙龙丨解析腾讯最新开源项目背后的技术栈
云+社区技术沙龙丨解析腾讯最新开源项目背后的技术栈
|
消息中间件 Kubernetes Cloud Native
致阿里巴巴中间件读者:2021年热门技术文章合集,建议收藏
我们评选出了【最受开发者欢迎】和【最具行业影响力】的共 20 篇文章,给过去的 2021 年划上一个完满的句号,哪一篇是你最喜爱的文章呢?
783 11
致阿里巴巴中间件读者:2021年热门技术文章合集,建议收藏
|
Cloud Native 安全 架构师
一文了解云原生架构 | 开发者社区精选文章合集(十三)
云原生架构本质上也是一种软件架构,最大的特点是在云环境下运行,也算是微服务的一种延伸。阿里巴巴为大量各行各业的企业客户提供了基于阿里云服务的解决方案和最佳实践,以帮助企业完成数字化转型,并积累了大量经验和教训。来看云原生架构如何设计。
一文了解云原生架构 | 开发者社区精选文章合集(十三)
|
消息中间件 网络协议 NoSQL
技术专家写代码-以点带面谈做开发
静儿历时8个月终于如愿回归写代码的生活。希望这8个月的成长能对自己的码砖起到一定的指导意义。下面就介绍一下静儿回归后的第一次码砖经历
技术专家写代码-以点带面谈做开发
【直播回顾】阿里技术专家天樵:基于JVM的脚本语言开发、运用实践
复杂的业务系统往往会使用表达式(EL)或者脚本语言(script)来实现部分业务逻辑的实时动态发布,比如在数学公式计算,规则引擎、脚本引擎中的运用。 本人在阿里巴巴长期担任规则引擎开发工作,通过规则引擎、规则管理平台等技术输出,来支持阿里巴巴复杂多变的上层业务变更需求。
5606 0
|
前端开发 Java 数据库
2018年阿里巴巴重要开源项目汇总(持续更新中)
摘要: 云栖社区特在2018年年末,将阿里巴巴的一些重要的开源项目进行整理,希望对大家有所帮助。 开源展示了人类共同协作,成果分享的魅力,每一次技术发展都是站在巨人的肩膀上,技术诸多创新和发展往往就是基于开源发展起来的,没有任何一家网络公司可以不使用开源技术,仅靠自身技术而发展起来。
3173 0
【直播预告】阿里技术专家天樵:基于JVM的脚本语言开发、运用实践
复杂的业务系统往往会使用表达式(EL)或者脚本语言(script)来实现部分业务逻辑的实时动态发布,比如在数学公式计算,规则引擎、脚本引擎中的运用。 本人在阿里巴巴长期担任规则引擎开发工作,通过规则引擎、规则管理平台等技术输出,来支持阿里巴巴复杂多变的上层业务变更需求。
2479 0
|
容器 Kubernetes Perl
从零开始入门 K8s| 阿里技术专家详解 K8s 核心概念
作者| 阿里巴巴资深技术专家、CNCF 9个 TCO 之一 李响 一、什么是 Kubernetes Kubernetes,从官方网站上可以看到,它是一个工业级的容器编排平台。Kubernetes 这个单词是希腊语,它的中文翻译是“舵手”或者“飞行员”。
16969 0
|
缓存 监控 架构师
价值32k!阿里顶级架构师深度解析SpringBoot进阶原理实战手册
在当下的互联网应用中,业务体系日益复杂,业务功能也在不断地变化。以典型的电商类应用为例,其背后的业务功能复杂度以及快速迭代要求的开发速度,与5年前的同类业务系统相比,面临着诸多新的挑战。这些挑战中核心的一点就是快速高效地实现系统功能,同时保证代码持续可维护,这是一个非常现实且亟待解决的问题。

热门文章

最新文章