System Design Lab
从学习路线进入,按知识手册建立基础,再用真实架构案例和专项题目完成面试输出训练。
Foundations
- Networking Essentials
System design 面试必备的 networking 基础
- IP
IP 基础、版本与类型
- OSI Model
OSI 七层模型与作用
System Design Core Concepts
- Latency 与 Throughput
理解 latency/throughput 的取舍
- CAP 理论
CAP 理论与 CP / AP 的权衡
- availability模式
故障切换与复制的availability策略
System Design Infrastructure
- 应用层设计
microservices与service discovery的应用层设计思路
- 大文件上传:API 中转、预签名直传与分片上传
比较经 API 中转、S3 预签名 PUT 直传与预签名分片上传三种拓扑:文件字节走哪条路、谁签名、S3 验证什么,以及过期签名、header 不匹配和 CORS 这些真实故障怎么恢复。
Database Design
- database概述
Relational vs NoSQL 与选型要点
- SQL databases
SQL database 特性与场景
- NoSQL databases
NoSQL 类型与场景
- Database Sharding:行按什么切、查询怎么找到它、搬数据和热 key 怎么办
比较 Range Sharding with Auto Split、Hash Slots、Directory by Tenant 与 Write Sharding of Hot Keys 四种分片拓扑:哪个值决定行落在哪个 shard、请求怎么找到那个 shard、加减 shard 时数据怎么搬、一个 key 或一段区间变热时会发生什么、路由的真相归谁,以及一次打错 shard 或一次广播能波及多远、怎么收住。
- SQL 调优
SQL 调优与索引策略
- NoSQL database
NoSQL 类型与特性
- SQL 还是 NoSQL
选择 SQL / NoSQL 的指南与权衡
- Normalization vs Denormalization
正则化与反正则化
- ACID vs BASE
一致性模型对比
Caching & Async
- cache策略
cache层级与更新策略概览
- Batch vs Stream Processing
批处理与流式处理的取舍
- 缓存架构:谁来填、谁来失效
比较 Cache-aside、应用托管 Write-through、Write-behind 与 CDC 驱动失效四种缓存拓扑:数据由谁放进缓存、写在什么时候算成功、旧值由谁清掉,以及每种架构的故障与恢复。
- 流处理架构:谁读哪个分区、状态放哪、哪个时钟说窗口完整、崩溃后从哪重放
比较 Stateless Consumer Group、Keyed State with Changelog、Event-time Windows with Checkpoints 与 Retained Shard Log with Independent Consumers 四种流处理拓扑:并行的单位是什么、处理进度记在哪、每个 key 的状态放在哪并怎么重建、按哪个时钟判断窗口完整以及迟到事件去哪、崩溃后从哪里重放、状态归谁,以及一次 worker 崩溃或一个卡住的 watermark 能波及多远、怎么收住。
Communication
- TCP 与 UDP
传输层协议对比
- RPC 与 REST
RPC 与 REST 的设计与对比
- REST / GraphQL / gRPC
API 风格对比
Architecture Patterns
- Message Queues
Message Queue 的场景
- API 组合架构:多个服务的数据该在哪里拼、谁拥有拼的代码、一个服务慢了客户端拿到什么
比较 Gateway Aggregation、Backend for Frontend、GraphQL Federation 与 CQRS Read View 四种组合拓扑:合并发生在哪、谁拥有这段代码因此改屏幕时谁被卡住、某个服务超时时客户端得到失败、部分答案还是过期答案、每个请求付一次合并还是视图提前付、状态归谁,以及一路超时或一个丢失的事件能波及多远、怎么收住。
Reliability & Operations
- 多区域架构:扛住一个可用区还是整个区域、写落在哪才算数、谁来切流量、能丢多少
比较 Single-region Multi-zone、Active-passive with Warm Standby、Active-active Read Local / Write Global 与 Active-active Write Local 四种区域拓扑:不用人干预能扛住什么故障、一条写要落到哪才算提交、第二个区域会不会落后、谁来切流量、客户端在死掉的区域上停留多久、远方用户读写是本地还是跨越世界、状态归谁,以及一次主区域故障或一份过期的 DNS 答案能波及多远、怎么收住。
- 注册与开户架构:创建时证明了什么、哪条记录是账户、第二种登录方式怎么挂上去、谁能替用户开户销户
比较 Password with Verified Email、Passkey Registration、Federated Identity with Account Linking 与 Directory Provisioning with Invitations 四种注册与开户拓扑:账户创建时证明了什么、哪条记录是账户而哪些只是登录方式、第二种方式怎么挂到已有账户上而不让同邮箱的人接管、除了本人谁能建、停用和删除账户、状态归谁,以及一句泄露存在性的回复或一次按邮箱的自动合并能波及多远、怎么收住。
System Design Interview Preparation
- System Design 入门
System Design 学习目标与学习指引
System Design Case Studies
- 聊天消息架构:连接落在哪、消息怎么按顺序到每台设备、人不在线时存在哪、怎么叫醒
比较 Gateways with Pub/Sub Fan-out、Per-conversation Log with Cursor Sync、Per-device Inbox Fan-out on Write 与 Presence-routed Delivery with Store-and-forward Push 四种聊天拓扑:连接落在哪个网关、消息怎么找到另一台机器上的收件人、会话的持久记录是什么、cursor 归谁、扇出发生在写入时还是读取时、离线设备怎么知道有消息在等、状态归谁,以及一次网关重启或一份过期的在线状态能波及多远、怎么收住。
- 通知投递架构:记录在哪出生、谁决定渠道、攒不攒着发、退信和投诉改变什么
比较 Transactional Outbox with Channel Workers、Preference-gated Service with Per-user Inbox、Digest with Scheduled Flush 与 Provider-tracked Delivery with Feedback Loop 四种通知拓扑:通知记录在哪里出生、会不会在业务写入和发送之间丢、谁决定渠道、决定存在哪、事件一条一发还是攒成一条、供应商的退信、投诉、过期或退订改变下一次发送的什么、状态归谁,以及一次 relay 崩溃或一个处理错的回调能波及多远、怎么收住。
AI Engineering
- 六类 RAG 系统架构
比较 Naive、Advanced、GraphRAG、Agentic 四种可互动的 RAG 拓扑,以及 Modular 与 Multimodal 两个家族:检索路径怎么走、证据存在哪个节点、谁决定 prompt 里放什么、每种架构最常在哪里出错。
- Agent Orchestration:五种协作架构
比较 Sequential、Concurrent、Group Chat、Handoff 与 Magentic 五种多 Agent 编排:谁决定下一步、状态存在哪个节点、结果怎样收敛、一个 Agent 出错波及多远,以及每种架构的故障与恢复。
- Agent Tool Execution:四种执行边界
比较模型直连工具、Tool Gateway、Sandbox Worker 与 Human Approval Queue 四种执行架构。
- Shared Memory:四种 Agent 写入架构
比较按 Key 单写者、乐观多写者 + CAS、事件日志 + 物化视图与 CRDT 复制记忆的拓扑、写入权、一致性与故障边界。
- Model Routing 与 Fallback 架构
比较 Static Alias、Policy Router、Quality Cascade 与 Race / Ensemble 四种模型路由拓扑:选模型的决定在哪个节点做、读的是什么状态、什么时候允许换模型、选错之后波及多远。
- AI Evaluation Pipeline:四种评估闭环
比较离线回归、Shadow、在线实验与 Production Feedback 四种 evaluation topology。
- Durable Agent:长任务执行架构
比较内存循环、Checkpointed Graph、Queue Workers 与 Durable Workflow 四种长任务执行拓扑:进度存在哪个节点、故障后从哪个单位恢复、副作用怎样避免做两次、等人批准时进程要不要活着。
- ACL-Aware RAG:无权读的 chunk 在哪一步被拦下
比较 ACL in the Index、Search then Check、Tenant Namespace 与 Policy-compiled Filter 四种带权限的 RAG 拓扑:权限判断发生在搜索前还是搜索后、读的是哪份状态、这份状态有多新,以及判断错了会泄露多远、怎么收住。
- Agent 身份与委托授权:Agent 调工具时拿的是谁的身份
比较 Shared Service Credential、User-delegated Token、Short-lived Capability 与 Approval-scoped Grant 四种 Agent 身份拓扑:凭证由谁签发、写的是谁替谁、有多窄多短、人有没有在执行前看过这一笔,以及凭证用错时事故有多大、怎么收住。
- Agent 记忆生命周期:记住的存在哪、何时可见、怎么忘掉
比较 Session Transcript、Background Consolidation、Agent-managed Memory Files 与 Governed Lifecycle 四种 Agent 记忆拓扑:记忆由谁写、存在哪个节点、新记忆什么时候对下一轮或下一个会话可见,以及记错、记漏、删不干净时波及多远、怎么收住。
- AI Gateway 与 Provider 抽象:策略和配额该放在哪一层
比较 In-app Provider SDK、Central AI Gateway、Federated Gateways 与 Provider-managed Aggregator 四种拓扑:格式翻译和策略在哪个节点执行、凭证和配额归谁所有、一个组件挂了波及多少消费者,以及配错或选错 provider 时怎么收住。
- MCP 工具平台:server 放在哪、谁来管每一次调用
比较 Embedded stdio Server、Remote Stateless Server、Gateway-managed Server 与 Per-tool Authorised Server 四种 MCP 拓扑:server 跑在哪、服务几个客户端、认证和按工具的授权在哪个节点做、状态归谁,以及一条被注入或被劫持的调用能碰到多远、怎么收住。
- Agent 沙箱执行:代码、shell、浏览器和桌面动作该关在哪一层
比较 Policy-sandboxed Local Process、Hardened Container per Task、MicroVM Ephemeral Workspace 与 Computer-use VM 四种沙箱拓扑:Agent 的动作在哪里执行、哪一层边界在拦、网络能到哪、任务结束后什么还留着、状态归谁,以及一条被注入的命令或一张被投毒的截图能碰到多远、怎么收住。
- 代理间协作架构:控制权最后归谁、上下文共不共享、同步还是要扛得住断线
比较 In-process Handoff、Agent-as-tool Delegation、Shared Queue/Blackboard 与 Federated A2A 四种代理间协作拓扑:控制权转移之后归谁、两个代理共不共享上下文和记忆、交换是同步的还是要扛得住断线、调用前怎么知道对方能做什么,以及转错人、专家答不全、写入没幂等、往已终态任务发消息这几种情况能波及多远、怎么收住。
Reference
- Next Steps
学习路径建议
- References
参考资料
- System Design速查表
2 的次方表与latency数速查
- 真实架构案例
真实架构、公司架构与工程博客