io_uring 没有预读会怎样:Turso 的实测
来源:frn.sh — 排名 · 72 分
📋 概述
Turso 用 io_uring 以 O_DIRECT 打开数据库文件后,内核预读被禁用,应用不得不自行实现预读。作者借此剖析:无预读时每次只发一个 SQE 串行等待,设备请求数接近 19.6 万;开启 32 页窗口预读后请求合并率冲到 91% 以上,设备请求骤降至 1.6 万,性能大幅提升。
🔑 核心要点
- O_DIRECT 会取走内核预读
- 、无预读时
- I/O 串行且无法合并
- 、开启预读后
- 请求合并率超 91%
- 、设备请求量下降一个数量级
💡 金句
缺少并发不是引擎的问题,而是数据层拿走了本该属于它的并发。
👍 0
👎 0
← 返回 Hacker News 首页