RPC实战与核心原理--极客时间课程推荐/优惠
版权声明
本站非极客时间官网,与官方无任何关系。我们不提供课程下载或详细内容,仅作为课程分享和推荐平台。我们鼓励大家支持正版,尊重创作者的劳动成果,这样不仅能帮助创作者持续产出优质内容,也能让自己获得更好的学习体验。请通过官方渠道购买和学习课程,感谢您的理解与支持。
课程详情
你将获得:
- 熟练掌握RPC核心原理及架构设计要点;
- 解决20+基于真实场景的高频问题;
- 深入剖析RPC框架的系统应用;
- 手把手设计一个灵活的RPC框架。
课程介绍
在应用架构“微服务化”大行其道的今天,RPC 早已经成为了工程师们的家常便饭。可以说,只要涉及到网络通信,我们就可能使用到 RPC,它已然成为解决分布式系统通信问题的一大利器。
虽然社区里已经有很多开源的RPC项目,它们简单易用,但如果揉碎了进去看框架的源代码,你会发现这其中涉及序列化、压缩算法、协议、动态代理、服务注册、加密、网络编程等等方面的知识。这不由得让人想起麦克利兰提出的冰山模型,那些复杂、核心的技术都在水面之下。
这还只是框架本身,如果再进一步说RPC集群,这里面又需要你懂监控、熔断限流、优雅启停、多协议、分布式链路跟踪等等知识。所以有人就说,你要是能研究透RPC,那基本就是一个资深的架构师了。
本专栏结合何小锋过去 20 多年累积的工作经验,精挑细选了 20 多个 RPC 相关的高频场景化问题,帮你搞懂RPC核心原理。专栏的教学目标是帮你透彻理解RPC,并能自行动手实现一个灵活的 RPC 框架;另外,专栏中覆盖的诸多线上案例及解决方案,相信也能为你所用。
具体内容上,专栏共分为三大部分,基础篇、进阶篇和高级篇。前两部分可以解决大部分场景问题,最后一部分则是解决一些更为复杂的场景问题。
基础篇:重点讲解 RPC 的基础知识,包括 RPC 的基本原理以及它的功能模块,夯实基础之后,老师会通过剖析一款 RPC 框架的授课方式来将知识点串联起来。
进阶篇:重点讲解 RPC 框架的架构设计,以及 RPC 框架集群、治理相关的知识。这部分老师会把自己曾经遇到过的线上问题包装加工后,娓娓道来地讲给你听。
高级篇:通过对上述两部分的学习,你已经对 RPC 有了较高层次的理解。这部分老师主要会从性能优化、线上问题排查以及一些比较有特色的功能设计上为你讲解RPC集群等高阶知识。
课程目录
开篇词
- 开篇词 | 别老想着怎么用好RPC框架,你得多花时间琢磨原理
基础篇
- 01 | 核心原理:能否画张图解释下RPC的通信流程?
- 02 | 协议:怎么设计可扩展且向后兼容的协议?
- 03 | 序列化:对象怎么在网络中传输?
- 04 | 网络通信:RPC框架在网络通信上更倾向于哪种网络IO模型?
- 05 | 动态代理:面向接口编程,屏蔽RPC处理流程
- 06 | RPC实战:剖析gRPC源码,动手实现一个完整的RPC
进阶篇
- 07 | 架构设计:设计一个灵活的RPC框架
- 08 | 服务发现:到底是要CP还是AP?
- 09 | 健康检测:这个节点都挂了,为啥还要疯狂发请求?
- 10 | 路由策略:怎么让请求按照设定的规则发到不同的节点上?
- 11 | 负载均衡:节点负载差距这么大,为什么收到的流量还一样?
- 12 | 异常重试:在约定时间内安全可靠地重试
- 13 | 优雅关闭:如何避免服务停机带来的业务损失?
- 14 | 优雅启动:如何避免流量打到没有启动完成的节点?
- 15 | 熔断限流:业务如何实现自我保护?
- 16 | 业务分组:如何隔离流量?
- 答疑课堂 | 基础篇与进阶篇思考题答案合集
高级篇
- 17 | 异步RPC:压榨单机吞吐量
- 18 | 安全体系:如何建立可靠的安全体系?
- 19 | 分布式环境下如何快速定位问题?
- 20 | 详解时钟轮在RPC中的应用
- 21 | 流量回放:保障业务技术升级的神器
- 22 | 动态分组:超高效实现秒级扩缩容
- 23 | 如何在没有接口的情况下进行RPC调用?
- 24 | 如何在线上环境里兼容多种RPC协议?
结束语
- 结束语 | 学会从优秀项目的源代码中挖掘知识
加餐
- 加餐 | 谈谈我所经历过的RPC
- 加餐 | RPC框架代码实例详解