세상을 보다
시스템 설계 스파링
그대로 복사해 가져가는 프롬프트 모음. 어느 대형 모델에 붙여넣어도 답을 늘어놓는 대신 면접관이 되어 장면마다 캐묻습니다.
이 프롬프트 모음은 지금은 简体中文만 있습니다.
사용법
시작하는 법
- 문제 하나를 골라 열고, 프롬프트를 복사합니다.
- 새 대화에 붙여넣으세요 —— 같은 문제를 이야기한 대화에서 시작하면 모델이 이전 답을 따라갑니다.
- 아무 말도 하지 말고 첫 질문을 기다립니다.
도중에 언제든 쓸 수 있는 네 가지 신호
跳过지금 바로 다음 장면으로提示답이 아니라 방향만 준다直说吧이 지점의 답을 다 말하고, 이어서 대가를 계속 캐묻는다复盘바로 마무리로 넘어가 회고 카드를 낸다
세 가지 함정
- 한 대화에서 두 문제를 연달아 하지 마세요 —— 앞 문제의 문맥이 실력에 대한 선입견이 됩니다.
- 질문을 받자마자 답을 검색하지 마세요. 30초 막히는 것 자체가 유효한 정보입니다.
- 칭찬을 시작하면 다섯 번째 원칙을 보라고 하세요 —— 인정받는 기분은 무엇을 놓쳤는지를 덮습니다.
권하는 순서: 먼저 공통 패턴 편을 부품 점검으로, 그다음 단축 URL로 흐름에 익숙해지고, 이후에는 지망 방향대로 고르고, 마지막에는 자기 프로젝트 편을 반복하세요.
자주 나오는 문제
秒杀 / 限时抢购
一秒钟涌进来十万个人,只有一百件货。
支付系统
钱不能多也不能少,而第三方随时超时。
订单与库存(电商交易链路)
一条链路跨四个服务,中间任何一步都可能失败。
短链系统
最简单的一道,专门考基本功。
Feed 流 / 朋友圈 / 微博时间线
读扩散还是写扩散,以及那个有一千万粉丝的人。
IM / 即时通讯
消息不能丢、不能重,还要在三个端上一致。
排行榜 / 计数系统
ZSet 谁都会用,同分怎么排、亿级怎么算名次就不一定了。
优惠券 / 红包
发一亿张券,核销不能重复,拆红包不能多出一分钱。
通知与推送系统
多通道、有配额,还不能把同一条推两遍。
限流器
四种算法的临界问题,以及计数的那台 Redis 挂了你放还是不放。
大文件上传 / 网盘
分片、续传、秒传,以及回调凭什么可信。
附近的人 / 打车派单
这其实是两道题,很多人把它们混成一道。
定时任务调度系统
只执行一次,以及「该跑没跑」怎么发现。
评论 / 树形结构
三种树存储没有绝对优劣,所以得先问产品要什么。
특별 훈련
通用模板:任何一道系统设计题
索引里没有的题,套这一份。
横切套路:第二层追问快问快答
专治「结论会背、推导讲不出」。
讲自己的项目
把「我做过一个 XX 系统」逼成三个数字 + 一个取舍 + 一个故障。