周志明的架构课

周志明的架构课

00 _导读 _ 什么是“The Fenix Project”?

00 开篇词 _ 如何构建一个可靠的分布式系统?

01 _ 原始分布式时代:Unix设计哲学下的服务探索

02 _ 单体系统时代:应用最广泛的架构风格

03 _ SOA时代:成功理论与失败实践

04 _ 微服务时代:SOA的革命者

05 _ 后微服务时代:跨越软件与硬件之间的界限

06 _ 无服务时代:“不分布式”云端系统的起点

07 _ 远程服务调用(上):从本地方法到远程方法的桥梁

08 _ 远程服务调用(下):如何选择适合自己的RPC框架?

09 _ RESTful服务(上):从面向过程编程到面向资源编程

10 _ RESTful服务(下):如何评价服务是否RESTful?

11 _ 本地事务如何实现原子性和持久性?

12 _ 本地事务如何实现隔离性?

13 _ 全局事务和共享事务是如何实现的?

14 _ 分布式事务之可靠消息队列

15 _ 分布式事务之TCC与SAGA

16 _ 域名解析系统,优化HTTP性能的第一步

17 _ 客户端缓存是如何帮助服务器分担流量的?

18 _ 传输链路,优化HTTP传输速度的小技巧

19 _ 如何利用内容分发网络来提高网络性能?

20 _ 常见的四层负载均衡的工作模式是怎样的?

21 _ 服务端缓存的三种属性

22 _ 分布式缓存如何与本地缓存配合,提高系统性能?

23 _ 认证:系统如何正确分辨操作用户的真实身份?

24 _ 授权(上):系统如何确保授权的过程可靠?

25 _ 授权(下):系统如何确保授权的结果可控?

26 _ 凭证:系统如何保证与用户之间的承诺是准确完整且不可抵赖的?

27 _ 保密:系统如何保证敏感数据无法被内外部人员窃取滥用?

28 _ 传输(上):传输安全的基础,摘要、加密与签名

29 _ 传输(下):数字证书与传输安全层

30 _ 验证:系统如何确保提交给服务的数据是安全的?

31 _ 分布式共识(上):想用好分布式框架,先学会Paxos算法吧

32 _ 分布式共识(下):Multi Paxos、Raft与Gossip,分布式领域的基石

33 _ 服务发现如何做到持续维护服务地址在动态运维中的时效性?

34 _ 路由凭什么作为微服务网关的基础职能?

35 _ 如何在客户端实现服务的负载均衡?

36 _ 面对程序故障,我们该做些什么?

37 _ 要实现某种容错策略,我们该怎么做?

38 _ 限流的目标与模式

39 _ 如何构建零信任网络安全?

40 _ 如何实现零信任网络下安全的服务访问?

41 _ 分布式架构中的可观测到底说的是什么?

42 _ 分析日志真的没那么简单

43 _ 一个完整的分布式追踪系统是什么样子的?

44 _ 聚合度量能给我们解决什么问题?

45 _ 模块导学:从微服务到云原生

46 _ 容器的崛起(上):文件、访问、资源的隔离

47 _ 容器的崛起(下):系统、应用、集群的封装

48 _ 以容器构建系统(上):隔离与协作

49 _ 以容器构建系统(下):韧性与弹性

50 _ 应用为中心的封装(上):Kustomize与Helm

51 _ 应用为中心的封装(下):Operator与OAM

52 _ Linux网络虚拟化(上):信息是如何通过网络传输被另一个程序接收到的?

53 _ Linux网络虚拟化(下):Docker所提供的容器通讯方案有哪些?

54 _ 容器网络与生态:与CNM竞争过后的CNI下的网络插件生态

55 _ 谈谈Kubernetes的存储设计理念

56 _ Kubernetes存储扩展架构:一个真实的存储系统如何接入或移除新存储设备?

57 _ Kubernetes存储生态系统:几种有代表性的CSI存储插件的实现

58 _ Kubernetes的资源模型与调度器设计

59 _ 透明通讯的涅槃(上):通讯的成本

60 _ 透明通讯的涅槃(下):控制平面与数据平面

61 _ 服务网格与生态:聊聊服务网格的两项标准规范

63 _ 基于Spring Boot的单体架构

64 _ 基于Spring Cloud的微服务架构

65 _ 基于Kubernetes的微服务架构

66 _ 基于Istio的服务网格架构

67 _ 基于云计算的无服务架构

春节特别放送(上)_ 有的放矢,事半功倍

春节特别放送(下)_ 积累沉淀,知行合一

用户故事 _ 詹应达:持续成长,不惧未来

结束语 _ 程序员之路

结课测试 _ 一套习题,测出你的掌握程度