0、开篇词:带你玩转Dubbo微服务框架

你好,我是何辉,很高兴能在这门Dubbo实战进阶课中和你相遇。 先自我介绍一下,我是一名擅长用Java / Python / Go封装插件或工具来解决通用性问题的一线架构师,也曾因为解决通用性问题先后申请了五十余项国家专利。 解决...

Dubbo源码剖析与实战

1、温故知新:Dubbo基础知识你掌握得如何

你好,我是何辉。 任何一门学科都有它基本的知识结构,而Dubbo作为一款优秀的微服务框架,自然也有着其领域的基础知识。所谓万丈高楼平地起,想把Dubbo用得游刃有余,对基础知识的深刻理解就尤为重要了。 举一个最基础的问题:Dubbo的总体架构是什么样...

Dubbo源码剖析与实战

2、异步化实践:莫名其妙出现线程池耗尽怎么办

你好,我是何辉。今天我们来探索Dubbo框架的第一道特色风味,异步化实践。 Dubbo以前作为一个高性能的RPC框架,现在已然上升成为了一个微服务框架,但本质还是用来提供RPC服务的,这就势必存在同步调用和异步调用的方式。 同步调用方式比较简单直接,...

Dubbo源码剖析与实战

3、隐式传递:如何精准找出一次请求的全部日志

你好,我是何辉。 上一讲我们学习了如何把一些耗时的业务进行异步化改造,核心三要素就是开启异步模式、衔接上下文信息、将结果写入到上下文中,这也是Dubbo的异步实现原理。 今天我们继续探索Dubbo框架的第二道特色风味,隐式传递。 在我们痛并快乐着的日...

Dubbo源码剖析与实战

4、泛化调用:三步教你搭建通用的泛化调用框架

你好,我是何辉。我们继续探索Dubbo框架的第三道特色风味,泛化调用。 提到调用,我想你肯定不陌生,前面我们也学习过同步调用、异步调用,核心是为了解决数据端到端传输的调用问题。那今天要学习的新型调用技能——泛化调用到底是什么?又能解决哪些实际问题呢?...

Dubbo源码剖析与实战

5、点点直连:点对点搭建产线“后门”的万能管控

你好,我是何辉。我们继续探索Dubbo框架的第四道特色风味,点点直连。 产线问题,一听到这个词,你是不是有一种莫名的紧张和敬畏感,没错,我们今天就来上点强度,聊一聊产线问题如何快速修复的话题。 情况是这样的,一天,运行良好的订单推送系统突然发生了一点...

Dubbo源码剖析与实战

6、事件通知:一招打败各种神乎其神的回调事件

你好,我是何辉。今天我们探索Dubbo框架的第五道特色风味,事件通知。 如果你用过Spring的Event事件,想必对事件通知不陌生,我们看个项目例子回顾一下,比如有个支付系统提供了一个商品支付功能: 图中的支付系统暴露了一个支付请求的Dubbo接...

Dubbo源码剖析与实战

7、参数验证:写个参数校验居然也会被训

你好,我是何辉。今天我们探索Dubbo框架的第六道特色风味,参数验证。 说到参数校验,相信你一定是又爱又恨。在发送或接收请求的时候,必要的参数校验可以拦截非法请求,提升请求质量,这样一个简单的数值比对逻辑看起来很简单,但写的过程却很枯燥和乏味,一不留...

Dubbo源码剖析与实战

8、缓存操作:如何为接口优雅地提供缓存功能

你好,我是何辉。今天我们探索Dubbo框架的第七道特色风味,缓存操作。 移动端App你应该不陌生了,不过最近有个项目引发了用户吐槽: 图中的App,在首页进行页面渲染加载时会向网关发起请求,网关会从权限系统拿到角色信息列表和菜单信息列表,从用户系统...

Dubbo源码剖析与实战

9、流量控制:控制接口调用请求流量的三个秘诀

你好,我是何辉。今天我们探索Dubbo框架的第八道特色风味,流量控制。 在上一讲中,我们通过增加缓存解决App首页加载缓慢的问题,再来回顾下整体调用链路: 每当上下班的时候,App被打开的频率非常高,首页加载的请求流量在短时间内居高不下,随之出现页...

Dubbo源码剖析与实战