模式
| 模式 | 读行为 | 写行为 |
|---|---|---|
| 旁路 | 命中返回,未命中查库回填 | 更新库后删除缓存 |
| 读穿 | 缓存层代为查库回填 | 同上,逻辑集中在缓存层 |
| 写穿 | 同旁路 | 同步写缓存与库 |
| 写回 | 同旁路 | 先写缓存,异步刷库 |
删除缓存比更新缓存更稳妥:并发更新与读回填交错时,更新缓存易留下旧值。
旁路缓存(Cache-Aside)最常见:读未命中查库回填,写时删除缓存;读穿、写穿、写回各有取舍,写回吞吐高但可能丢数据。
| 模式 | 读行为 | 写行为 |
|---|---|---|
| 旁路 | 命中返回,未命中查库回填 | 更新库后删除缓存 |
| 读穿 | 缓存层代为查库回填 | 同上,逻辑集中在缓存层 |
| 写穿 | 同旁路 | 同步写缓存与库 |
| 写回 | 同旁路 | 先写缓存,异步刷库 |