看见世界
系统设计陪练
一批可以直接复制走的提示词。贴给任何一个大模型,它会当面试官逐幕问你,而不是把答案倒给你。
怎么用
怎么开始
- 挑一道题,点开它,把提示词复制走。
- 新开一个空对话贴进去 —— 别在聊过这道题的对话里开,模型会顺着旧答案走。
- 什么都别说,等它问第一个问题。
中途随时能喊的四个口令
跳过立刻进下一幕提示给一个方向,但不给答案直说吧讲这一点的完整答案,然后继续追问代价复盘立刻跳到收尾,输出复盘卡片
三条坑
- 别在同一个对话里连做两道题 —— 上一题的上下文会让它对你的水平有先入判断。
- 别在它问完之后立刻搜答案。卡住 30 秒说不出来,本身就是一条有效信息。
- 它开始夸你的时候,提醒它看铁律第五条 —— 被肯定的感觉会盖掉「我漏了什么」。
建议顺序:先做「横切套路」那份当零件测试,再拿短链熟悉流程,然后按你的方向挑,最后反复做「讲自己的项目」。
高频题
秒杀 / 限时抢购
一秒钟涌进来十万个人,只有一百件货。
支付系统
钱不能多也不能少,而第三方随时超时。
订单与库存(电商交易链路)
一条链路跨四个服务,中间任何一步都可能失败。
短链系统
最简单的一道,专门考基本功。
Feed 流 / 朋友圈 / 微博时间线
读扩散还是写扩散,以及那个有一千万粉丝的人。
IM / 即时通讯
消息不能丢、不能重,还要在三个端上一致。
排行榜 / 计数系统
ZSet 谁都会用,同分怎么排、亿级怎么算名次就不一定了。
优惠券 / 红包
发一亿张券,核销不能重复,拆红包不能多出一分钱。
通知与推送系统
多通道、有配额,还不能把同一条推两遍。
限流器
四种算法的临界问题,以及计数的那台 Redis 挂了你放还是不放。
大文件上传 / 网盘
分片、续传、秒传,以及回调凭什么可信。
附近的人 / 打车派单
这其实是两道题,很多人把它们混成一道。
定时任务调度系统
只执行一次,以及「该跑没跑」怎么发现。
评论 / 树形结构
三种树存储没有绝对优劣,所以得先问产品要什么。
专项
通用模板:任何一道系统设计题
索引里没有的题,套这一份。
横切套路:第二层追问快问快答
专治「结论会背、推导讲不出」。
讲自己的项目
把「我做过一个 XX 系统」逼成三个数字 + 一个取舍 + 一个故障。