分布式核心技术详解-全面提升分布式系统设计能力

是否具备分布式系统的架构和设计能力,是区分普通程序员和高级程序员,尤其是架构师的一个分水岭。学习和掌握分布式系统设计,是向架构师迈进的必经之路。

本课程将分为八个主要章节,由浅入深,带你了解分布式系统的设计步骤,深入讲解核心技术,消息队列、数据一致性和事务、大型网站的演进/迁移/双活和多活、以及Service Mesh新技术等。

课程的讲解方式还会增加面试的安排,不仅学习技术,也为你之后的系统面试做储备。最后,老师会根据自身经历,分享如何成长为架构师,如何高效学习技术等内容。

资源目录

第一章 课程介绍 (2讲)

01 | 课程介绍

02 | 内容综述

第二章 如何设计一个分布式计数服务 – 系统设计面试案例 (7讲)

03 | 需求收集和总体架构设计

04 | 存储设计

05 | 计数服务设计(上)

06 | 计数服务设计(下)

07 | 查询服务设计

08 | 技术栈选型

09 | 进一步考量和总结

第三章 如何设计一个简化版的Kafka消息系统 – 拍拍贷PMQ设计演进案例 (8讲)

10 | PMQ 2.0项目背景

11 | PMQ 2.0的设计解析(上)

12 | PMQ 2.0的设计解析(中)

13 | PMQ 2.0的设计解析(下)

14 | PMQ 3.0的演进

15 | Kafka的动态重平衡是如何工作的?(上)

16 | Kafka的动态重平衡是如何工作的?(下)

17 | 消息队列设计和治理最佳实践

第四章 如何解决微服务的数据一致性和事务问题 (13讲)

18 | 第四章目录和大纲

19 | 微服务的四大技术难题是什么?

20 | 如何解决微服务的数据一致性分发问题?

21 | 如何解决微服务的数据聚合Join问题?

22 | 如何解决微服务的分布式事务问题?(上)

23 | 如何解决微服务的分布式事务问题?(下)

24 | 阿里分布式事务中间件Seata解析

25 | Uber微服务编排引擎Cadence解析

26 | 如何理解Uber Cadence的架构设计?

27 | 如何实现遗留系统的解耦拆分?

28 | 拍拍贷系统拆分项目案例

29 | CQRS/CDC技术在Netflix的实践

30 | 第四章总结

第五章 如何设计一个高并发无状态的会话缓存服务 – 携程SessionServer案例 (5讲)

31 | SessionServer项目背景

32 | 总体架构设计

33 | 如何设计一个高性能基于内存的LRU Cache?

34 | 如何设计一个高性能大容量持久化的ConcurrentHashmap?

35 | 设计评估和总结

第六章 系统设计综合案例 – SaaS服务healthchecks.io的设计 (6讲)

36 | SaaS项目healthchecks.io的背景和架构(上)

37 | SaaS项目healthchecks.io的背景和架构(下)

38 | 如何设计一个轻量级的基于DB的延迟任务队列?

39 | 如何设计一把轻量级的锁?

40 | 如何设计一个分布式限流系统?

41 | 如何设计一个分布式TopK系统实现实时防爬虫?

第七章 如何实现精细化服务治理 – 服务网格技术ServiceMesh解析 (10讲)

42 | 第七章目标和大纲

43 | 为什么说ServiceMesh是微服务的未来(上)

44 | 为什么说ServiceMesh是微服务的未来(下)

45 | 解析Envoy Proxy(上)

46 | 解析Envoy Proxy(下)

47 | Envoy在Lyft的实践

48 | 解析Istio

49 | K8s Ingress、Istio Gateway和API Gateway该如何选择?(上)

50 | K8s Ingress、Istio Gateway和API Gateway该如何选择?(下)

51 | Spring Cloud、K8s和Istio该如何集成?

第八章 大型网站架构演进案例 (8讲)

52 | 第八章目标和大纲

53 | 拍拍贷案例:大型网站架构是如何演进的?

54 | 最小可用架构:Minimum Viable Architecture(上)

55 | 最小可用架构:Minimum Viable Architecture(下)

56 | 如何构建基于OAuth2/JWT的微服务架构?(上)

57 | 如何构建基于OAuth2/JWT的微服务架构?(下)

58 | 拍拍贷案例:如何实现数据中心机房的迁移?

59 | 携程/Netflix案例:如何实现同城双活和异地多活?

第九章 架构师成长之道 (7讲)

60 | 第九章大纲

61 | 学习开源项目的6个层次和8种方法(上)

62 | 学习开源项目的6个层次和8种方法(中)

63 | 学习开源项目的6个层次和8种方法(下)

64 | 百万年薪架构师是如何炼成的?

65 | 解读一份大厂的研发岗职级体系

66 | 结课测试&结束语

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注