RPC实战与核心原理,高效解决分布式系统的通信难题

课程介绍

课程来源于RPC实战和核心原理,高效解决分布式系统中的通信问题

你会得到

熟悉RPC核心原理和架构设计要点;

基于真实场景解决20+高频问题;

深入分析RPC框架的系统应用;

逐步设计灵活的 RPC 框架。

课程介绍

在“微服务”应用架构的今天,RPC早已成为工程师的家常便饭。可以说,只要涉及到网络通信,我们就可能会用到RPC,它已经成为解决分布式系统通信问题的利器。

虽然社区里有很多开源的RPC项目,简单易用,但是如果你看一下框架的源码,你会发现涉及到序列化、压缩算法、协议、动态代理、服务注册、加密、网络编程等。这不禁让人想起麦克莱兰提出的冰山模型,那些复杂的核心技术都在水下。

这只是框架本身。如果再进一步讲RPC集群,就需要了解监控、熔断限流、优雅启停、多协议、分布式链路跟踪等知识。所以有人说,如果你能把RPC学透,基本就是高级架构师了。

本专栏结合何晓峰20年积累的工作经验,精心挑选了20余个RPC相关的高频场景问题,帮助您理解RPC的核心原理。专栏的教学目标是帮助您深入理解RPC,自己实现一个灵活的RPC框架;另外,专栏中的很多在线案例和解决方案相信对您也有帮助。

在具体内容上,专栏分为基础、进阶、进阶三个部分。前两部分可以解决大部分场景问题,最后一部分是解决一些比较复杂的场景问题。

Basics:重点讲解RPC的基础知识,包括RPC的基本原理及其功能模块。打好基础后,老师会通过分析一个RPC框架的教学方法来串联知识点。

高级篇:重点讲解RPC框架的架构设计,以及RPC框架集群和治理相关的知识。这部分老师会把自己遇到的线上问题打包处理,然后详细的告诉大家。

进阶:通过以上两部分的学习,你已经对RPC有了一个高层次的理解。这部分老师主要从性能优化、在线排错、以及一些比较有特色的功能设计等方面给大家讲解RPC集群等进阶知识。

文件目录

00丨开场白(1讲)

00丨开场白丨不要老想着怎么用好RPC框架,你需要多花时间琢磨原理.m4a

00丨开场白丨不要老想着怎么用好RPC框架,要多花时间琢磨原理.html

00丨开场白丨不要老想着怎么用好RPC框架,要多花时间琢磨原理.pdf

01丨基础(6讲)

01丨核心原理:能不能画张图解释一下RPC的通信过程? .m4a

01丨核心原理:能不能画张图解释一下RPC的通信过程? .html

01丨核心原理:能不能画张图解释一下RPC的通信过程? .pdf

02丨协议:如何设计可扩展和向后兼容的协议? .html

02丨协议:如何设计可扩展和向后兼容的协议? .pdf

02丨协议:如何设计可扩展和向后兼容的协议? .m4a

03丨序列化:对象是如何在网络中传输的? .pdf

03丨序列化:对象是如何在网络中传输的? .m4a

03丨序列化:对象是如何在网络中传输的? .html

04丨网络通信:RPC框架在网络通信中更喜欢哪种网络IO模型? .pdf

04丨网络通信:RPC框架在网络通信中更喜欢哪种网络IO模型? .html

04丨网络通信:RPC框架在网络通信中更喜欢哪种网络IO模型? .m4a

05丨动态代理:面向接口编程,屏蔽RPC处理流程.html

05丨动态代理:面向接口编程,屏蔽RPC处理流程.m4a

05丨动态代理:面向接口编程,屏蔽RPC处理流程.pdf

06丨RPC实战:解析gRPC源码并实现一个完整的RPC.pdf

06丨RPC实战:分析gRPC源码,实现一个完整的RPC.m4a

06丨RPC实战:分析gRPC源码,实现一个完整的RPC.html

02丨进阶篇(11讲)

问答课丨基础与进阶思维题答案合集.pdf

问答课丨基础与进阶思维题答案合集.html

问答课丨基础与进阶思维题答案合集.m4a

07丨架构设计:设计一个灵活的RPC框架.html

07丨架构设计:设计灵活的RPC框架.m4a

07丨架构设计:设计灵活的RPC框架.pdf

08丨服务发现:要CP还是AP? .pdf

08丨服务发现:要CP还是AP? .m4a

08丨服务发现:要CP还是AP? .html

09丨健康检查:本节点宕机了,怎么还发疯似的发请求? .m4a

09丨健康检查:本节点宕机了,怎么还发疯似的发请求? .pdf

09丨健康检查:本节点宕机了,怎么还发疯似的发请求? .html

10丨路由策略:如何按照设定的规则向不同的节点发送请求? .html

10丨路由策略:如何按照设定的规则向不同的节点发送请求? .m4a

10丨路由策略:如何按照设定的规则向不同的节点发送请求? .pdf

11丨负载均衡:节点负载差距这么大,为什么收到的流量还是一样? .html

11丨负载均衡:节点负载差距这么大,为什么收到的流量还是一样? .m4a

11丨负载均衡:节点负载差距这么大,为什么收到的流量还是一样? .pdf

12丨异常重试:在约定时间内安全可靠地重试.m4a

12丨异常重试:在约定时间内安全可靠地重试.pdf

12丨异常重试:在约定时间内安全可靠地重试.html

13丨优雅关机:如何避免服务宕机造成的业务损失? .pdf

13丨优雅关机:如何避免服务宕机造成的业务损失? .html

13丨优雅关机:如何避免服务宕机造成的业务损失? .m4a

14丨优雅启动:如何避免流量打到还没启动的节点? .html

14丨优雅启动:如何避免流量打到还没启动的节点? .m4a

14丨优雅启动:如何避免流量打到还没启动的节点? .pdf

15丨保险丝与限流:业务如何实现自我保护.html

15丨熔断限流:业务如何实现自我保护.pdf

15丨熔断限流:业务如何实现自我保护.m4a

16丨业务分组:流量如何隔离? .pdf

16丨业务分组:流量如何隔离? .m4a

16丨业务分组:流量如何隔离? .html

03丨进阶篇(8讲)

17丨异步RPC:压榨单机吞吐量.pdf

17丨异步RPC:压榨单机吞吐量.m4a

17丨异步RPC:压榨单机吞吐量.html

18丨安全体系:如何建立可靠的安全体系? .html

18丨安全体系:如何建立可靠的安全体系? .pdf

18丨安全体系:如何建立可靠的安全体系? .m4a

19丨分布式环境下如何快速定位问题? .pdf

19丨综合案例:电商平台技术架构如何演进? .m4a

19丨分布式环境下如何快速定位问题? .html

20丨时钟轮在RPC中的详细应用.pdf

20丨时钟轮在RPC.html中的详细应用

20丨时钟轮在RPC.m4a中的详细应用

21丨流量回放:保障业务技术升级的神器.m4a

21丨流量回放:保障业务技术升级的神器.pdf

21丨流量回放:保证业务技术升级的神器.html

22丨动态分组:秒级缩放的超高效实现.pdf

22丨动态分组:超高效实现秒级扩容.m4a

22丨动态分组:超高效实现秒级伸缩.html

23丨如何在没有接口的情况下进行RPC调用? .html

23丨如何在没有接口的情况下进行RPC调用? .m4a

23丨如何在没有接口的情况下进行RPC调用? .pdf

24丨线上环境如何兼容多种RPC协议? .html

24丨线上环境如何兼容多种RPC协议? .m4a

24丨线上环境如何兼容多种RPC协议? .pdf

04丨特别广播(1讲)

专题播报丨说说我经历过的RPC.html

专题播报丨说说我经历过的RPC.pdf

专题播客丨说说我经历过的RPC.m4a

05丨结语(1讲)

结语丨从优秀项目的源码中学习挖掘知识.html

结语丨从优秀项目源码中学习挖掘知识.pdf

结语丨从优秀项目源码中学习挖掘知识.m4a

阅读剩余
THE END