后端工程师的“逃不掉清单”:30个系统 design 关键词

内容分享2天前发布
0 1 0

后端工程师的“逃不掉清单”:30个系统 design 关键词

想把后端做得靠谱,这些概念早晚会跳到你面前。下面用一句话故事帮你秒懂,面试时也能脱口而出。


1️⃣ API(应用编程接口)

两家APP像两个国家,API 就是海关条约——只要护照(请求格式)对,就能互通有无。


2️⃣ API 网关

大厅前台一个人拦住所有访客,查证件、指路、限流、记日志,后端服务安心在办公室里干活。


3️⃣ JWT(JSON Web Token)

游乐园手环,进门时发给你,里面写着“VIP 可玩过山车”,各项目一看就放行,不用再回门口查档案。


4️⃣ Webhook

快递到楼下了,小哥主动打电话让你下楼拿;不用你每 5 分钟跑下楼问一次。


5️⃣ REST vs GraphQL
• REST:去食堂,薯条窗口、饮料窗口、汉堡窗口各跑一趟;
• GraphQL:点外卖,一张单子“只要薯条+可乐”,商家一次性打包。


6️⃣ 负载均衡

奶茶店门口排 4 条队,4 位店员同时出杯,谁也别闲着,顾客也等得少。


7️⃣ 代理 vs 反向代理
• 代理:帮客户翻墙找资料;
• 反向代理:帮服务器挡枪,外面的人只认识“门神”,不知道里面究竟有几台真服务器。


8️⃣ 可扩展性(Scalability)
故事:生意火了,再开 10 家分店,别让客人挤破头;分两种:
• 纵向=把一家店楼层加高;
• 横向=多开分店。


9️⃣ 可用性(Availability)

网站像 7-11,全年 99.9 % 开门;那 0.1 % 挂掉时间叫宕机,老板会心疼。


单点故障(SPOF)

仓库只有一把钥匙,老板弄丢,全店停业;把钥匙再配几把,或者换电子锁,消灭 SPOF。


1️⃣1️⃣ CAP 定理

网络断的那一刻,你只能在“数据一致”或“人人都能访问”里二选一,不可能两手都硬。


1️⃣2️⃣ SQL vs NoSQL
• SQL:Excel 表,行列板板正正,透视表贼溜;
• NoSQL:便签纸,想贴哪贴哪,撕了也不心疼,扩容方便。


1️⃣3️⃣ ACID 事务

银行转账四重保险——原子(要么全成要么全撤)、一致(总账平衡)、隔离(别人不干扰)、持久(断电也认账)。


1️⃣4️⃣ 数据库索引

图书馆目录卡片,让你直接跳到第 3 排第 5 架,而不是逐本翻。


1️⃣5️⃣ 分片(Sharding)

把大仓库按省份拆成小仓库,北京仓管北京单,上海仓管上海单,容量瞬间翻倍。


1️⃣6️⃣ 一致性哈希

仓库扩容时,只搬动相邻几排货架,而不是把全部书重新编号,省力又平滑。


1️⃣7️⃣ CDC(变更数据捕获)

账本每写一笔,复印机自动扫一份给财务、给仓库、给BI,大家零延迟同步。


1️⃣8️⃣ 缓存

把畅销奶茶提前摆前台,不用每次都转身去后厨,秒出杯。


1️⃣9️⃣ 缓存策略
• Cache-Aside:客人先问前台,没有再去后厨;
• Read-Through:前台自动去后厨拿;

• Write-Through:后厨一做好就同步到前台。

2️⃣0️⃣ 缓存淘汰策略

前台冰箱满了,谁最久没喝(LRU)就扔谁;谁买得最少(LFU)也扔,看业务口味。

2️⃣1️⃣ CDN(内容分发网络)

把奶茶原料预放到离你家 500 米的加盟店,外卖 2 分钟到,不用跨城调货。

2️⃣2️⃣ 限流算法

店门口发号码牌,每秒只放 10 人,防止挤爆柜台;牌发完了?请排队或下次再来。

2️⃣3️⃣ 消息队列

顾客下单,小票扔进传送带,厨房慢慢做,前台继续笑脸迎人,两边互不耽误。

2️⃣4️⃣ 布隆过滤器(Bloom Filter)

门卫拿一张“可能来过”的小抄,名字在单子里才放行;偶尔冤枉好人,但绝不漏掉坏人,还省内存。

2️⃣5️⃣ 幂等性(Idempotency)

刷新支付页面 N 次,也只扣一次钱;重复点“关注”,不会把up主粉丝数刷爆。

2️⃣6️⃣ 并发 vs. 并行
• 并发:一个收银员手速飞快,轮流给 10 人结账;
• 并行:10 个收银员同时打单。

核心:并发是“看起来一起”,并行是“真的同时”。

2️⃣7️⃣ 长轮询 vs. WebSocket
• 长轮询:顾客站在柜台等新品,没出就死等,直到有货;

• WebSocket:双方加微信,新品一到直接推送,不用反复问。

2️⃣8️⃣ 有状态 vs. 无状态架构
• 有状态:收银员记得你“半糖少冰”,下次直接喊你名字;

• 无状态:每次点单都重新说口味,方便换班,扩容轻松。

2️⃣9️⃣ 批处理 vs. 流处理
• 批处理:半夜一次性算完全天账单,省电费;

• 流处理:来一笔算一笔,实时监控库存,电费高但零延迟。

3️⃣0️⃣ GeoHash

把地球切成乐高积木,每个区域给一串短字符,打车、外卖、找单车都能秒级匹配附近格子,又快又省存储。

收官口诀

系统设计不是选边站,而是看场景、算代价、讲权衡。

把这30条故事带进口袋,下次面试聊到任何关键词,你都能“先讲场景,再谈取舍”——这就是高级工程师的思维方式。程序员必备技术指南涉及许多程序员进阶思维方式的指导, 了解面试官的思维方式才是面试成功的关键.

后端工程师的“逃不掉清单”:30个系统 design 关键词

专栏

面试通关:程序员必备技术指南

作者:SuperOps

9.99币

38人已购

查看

© 版权声明

相关文章

1 条评论

  • 头像
    三碗mi饭 投稿者

    收藏了,感谢分享

    无记录
    回复