为什么 MySQL 用 B+Tree 而分布式 KV 用 LSM-Tree:从写入方式讲起
理解 B+Tree 与 LSM-Tree 的根本分歧,很多数据库的奇怪行为就都能解释了:为什么 LSM 系的库写入快但读延迟抖动,为什么 B+Tree 系的表在大量随机写入后会膨胀。本文从原地更新与追加写入讲起,给出选型...
进程、线程、虚拟线程、协程:四种并发模型的真实差异与选型表
并发这个词底下至少藏着四套完全不同的模型。本文从最重的进程讲起,逐层拆到线程、虚拟线程与协程,给出一张可以按图索骥的选型表,并澄清三个常见误解:并发数越多越好、协程能解决所有性能问题、用了并发就不用管锁。
从 CPU 缓存行到伪共享:并发编程里最被低估的性能杀手
多线程性能不升反降,CPU 没跑满、锁也没竞争——问题可能出在伪共享。本文讲清 64 字节缓存行的作用、伪共享的产生机制、三种解法与面试高分答法。

