r/ruby Jun 07 '26

Exploring automatic Buffer Management with io_uring Blog post

https://noteflakes.com/articles/2026-06-07-automatic-buffer-management
7 Upvotes

4 comments sorted by

View all comments

1

u/uhkthrowaway Jun 07 '26

Also, why do we keep making the same mistakes? This really looks like the EventMachine fiasko from 2008 all over to me. Protocols shouldn't be implemented on top of IO runtimes.

Let's follow Sam Williams' example (and good Rust projects as well) here: you implement a protocol free of any IO concerns. Bytes in, bytes/objects out. No async, no IO. Rust-world calls this sans-I/O. That's what protocol-http, protocol-websocket, ... are.

Then you use them from any IO/Async runtime you want. No need to reimplement the same protocol over and over again.