专题阅读路线8 篇约 10 小时读完
系统性能底层清单
从内存、线程到 I/O 与调度,摸清性能的每一层
这条路线自底向上梳理系统性能的底层要素:内存子系统、并发模型、数据结构、I/O 接口、CPU 调度,再到无服务器、unikernel 与轻量虚拟机等新形态。适合想真正理解“为什么慢”的工程师,读完能建立一份可对照排查的性能底层清单。
阅读顺序
- 01
每个程序员都应该了解的内存知识
What Every Programmer Should Know About Memory (2007)
开篇基石:内存子系统是几乎所有性能问题的源头。
系统与数据库2015 · 271 分 · 59 评进阶 · 约 150 分钟编辑精选 - 02
线程对大多数用途而言是个坏主意(1995)
Threads Are a Bad Idea for Most Purposes (1995)
从内存转向并发模型,理解线程与事件驱动的取舍。
系统与数据库2017 · 423 分 · 382 评进阶 · 约 25 分钟编辑精选 - 03
现代 B 树技术(2011)
Modern B-Tree Techniques (2011)
数据结构层:B 树是数据库性能的核心技术。
系统与数据库2017 · 314 分 · 11 评专业 · 约 180 分钟 - 04
使用 io_uring 的高效 I/O
Efficient IO with io_uring
I/O 层:io_uring 代表异步 I/O 的最新演进。
系统与数据库2019 · 426 分 · 96 评进阶 · 约 45 分钟编辑精选 - 05
Linux 调度器:浪费核心的十年
The Linux Scheduler: A Decade of Wasted Cores
调度层:揭示 CFS 如何浪费 CPU 核心。
系统与数据库2016 · 467 分 · 142 评进阶 · 约 75 分钟 - 06
无服务器计算:进一步,退两步
Serverless Computing: One Step Forward, Two Steps Back
上升到平台形态:无服务器在性能上的根本缺陷。
系统与数据库2018 · 465 分 · 222 评 · 引用 2进阶 · 约 45 分钟 - 07
Unikernel:Linux 主导地位的下一个阶段
Unikernels: The Next Stage of Linux's Dominance
探讨 Linux 内核形态演进对性能的影响。
系统与数据库2019 · 263 分 · 118 评进阶 · 约 25 分钟 - 08
我的 VM 比你的容器更轻(也更安全)
My VM is lighter (and safer) than your container (2017)
收尾于隔离与轻量的最新权衡:轻量级 VM 对比容器。
系统与数据库2022 · 477 分 · 279 评专业 · 约 50 分钟