第20章 系统设计面试题面试频率: ★★★★★系统设计是高级工程师面试的必考项。面试官会给出一个开放性问题:“设计一个短链系统”“设计一个秒杀系统”“设计一个Feed流系统”。这章咱们通过经典案例,讲解系统设计的方法论和实战。20.1 系统设计方法论——需求分析/容量估算/架构设计/技术选型系统设计六步法1. 需求分析(3-5分钟)澄清需求:核心功能是什么?用户量级多大?读写比例多少?延迟要求?示例: 设计短链系统面试官: 设计一个短链系统。 候选人: 我先确认几个需求。 1. 核心功能: 长URL转短URL,短URL跳转长URL? 2. 用户量: 日活多少?QPS多少? 3. 短链长度: 有要求吗? 4. 自定义短链: 用户能自定义吗? 5. 有效期: 短链永久有效还是有TTL? 面试官: 核心功能对。日活1亿,QPS读1万写100。短链尽可能短。不支持自定义。永久有效。2. 容量估算(2-3分钟)日活1亿,每人平均产生5条短链: 日新增: 5亿条 年新增: 5亿 × 365 = 1825亿条 存储: 每条