Die Welt sehen
Sparring für Systementwurf
Vorlagen, die du kopierst und mitnimmst. Füge eine in ein beliebiges großes Modell ein: es spielt den Interviewer und führt dich Szene für Szene durch die Aufgabe, statt die Antwort aufzusagen.
Diese Vorlagen gibt es bisher nur auf 简体中文.
So funktioniert es
So fängst du an
- Wähle eine Aufgabe, öffne sie und kopiere die Vorlage.
- Füge sie in ein ganz neues Gespräch ein — nicht in eines, in dem du diese Aufgabe schon besprochen hast, sonst folgt das Modell deinen alten Antworten.
- Sage nichts. Warte auf die erste Frage.
Vier Stichwörter, die du jederzeit einwerfen kannst
跳过sofort zur nächsten Szene提示eine Richtung geben, nicht die Antwort直说吧diesen Punkt vollständig erklären und danach weiter nach dem Preis fragen复盘direkt zum Abschluss springen und die Auswertungskarte ausgeben
Drei Fallen
- Mach nicht zwei Aufgaben in einem Gespräch — der Kontext der ersten lässt das Modell dein Niveau vorschnell einschätzen.
- Such nicht die Antwort, sobald es fragt. 30 Sekunden festzuhängen ist selbst eine brauchbare Information.
- Wenn es anfängt, dich zu loben, verweise es auf die fünfte Regel — das Gefühl, bestätigt zu werden, verdeckt, was du übersehen hast.
Empfohlene Reihenfolge: erst die Querschnittsübung als Bauteilprüfung, dann die Kurzlink-Aufgabe, um in den Ablauf zu kommen, danach nach deiner Richtung auswählen und die Aufgabe zum eigenen Projekt immer wieder machen.
Häufige Aufgaben
秒杀 / 限时抢购
一秒钟涌进来十万个人,只有一百件货。
支付系统
钱不能多也不能少,而第三方随时超时。
订单与库存(电商交易链路)
一条链路跨四个服务,中间任何一步都可能失败。
短链系统
最简单的一道,专门考基本功。
Feed 流 / 朋友圈 / 微博时间线
读扩散还是写扩散,以及那个有一千万粉丝的人。
IM / 即时通讯
消息不能丢、不能重,还要在三个端上一致。
排行榜 / 计数系统
ZSet 谁都会用,同分怎么排、亿级怎么算名次就不一定了。
优惠券 / 红包
发一亿张券,核销不能重复,拆红包不能多出一分钱。
通知与推送系统
多通道、有配额,还不能把同一条推两遍。
限流器
四种算法的临界问题,以及计数的那台 Redis 挂了你放还是不放。
大文件上传 / 网盘
分片、续传、秒传,以及回调凭什么可信。
附近的人 / 打车派单
这其实是两道题,很多人把它们混成一道。
定时任务调度系统
只执行一次,以及「该跑没跑」怎么发现。
评论 / 树形结构
三种树存储没有绝对优劣,所以得先问产品要什么。
Sonderübungen
通用模板:任何一道系统设计题
索引里没有的题,套这一份。
横切套路:第二层追问快问快答
专治「结论会背、推导讲不出」。
讲自己的项目
把「我做过一个 XX 系统」逼成三个数字 + 一个取舍 + 一个故障。