TokioConf 2026 - Storage-intensive apps on tokio: when it's time to reach... by Christian Schwarz

Storage-intensive apps on tokio: when it's time to reach for io_uring by Christian Schwarz `tokio::fs` is a userspace illusion to make fundamentally blocking IO appear asynchronous. Fine for most apps, but in the Neon storage stack we have a more refined idea of how we want to drive our IOs against local NVMe storage. This talk covers: how Linux filesystem IO actually works (and how that inevitably leads to a design like tokio::fs); how io_uring changes the problem & design space; how we built `tokio-epoll-uring` to safely use io_uring on top of Tokio, without forking Tokio and without any sidecar threads or second runtime; and what primitives we'd need from Tokio to lift our approach's limitations. A fully io_uring-native runtime is probably inevitable but until we get there let's start reaping benefits now in the area where epoll falls shortest: local storage! Video Production by Confreaks Follow Confreaks 👇 https://confreaks.com https://x.com/confreaks https://confreaks.bsky.social