All Topics
All Topics
Technology
Technology
Design
Design
Programming
Programming
Science
Science
News
News
Gaming
Gaming
Entertainment
Entertainment
Business
Business
Finance
Finance
Sports
Sports
Health
Health
Food
Food
Travel
Travel
Art
Art
Music
Music
Books
Books
Education
Education
Politics
Politics
Personal
Personal
No algorithm. No AI slop. No ads. Just RSS. Pro-human. Indie writers. Real journalism. Open web. Chronological. Hand toasted.

Apache Iggy Architecture Rewrite: Implementing WebSocket Protocol with io_uring and Completion-Based I/O

By

spetz

6mo ago· 7 min readenInsight

Summary

Apache Iggy is undergoing a major architectural rewrite from version 0.5.0, transitioning to a thread-per-core, shared-nothing design using io_uring's completion-based I/O model. The project has migrated from Tokio to compio runtime to better leverage io_uring capabilities, which presents integration challenges with the Rust ecosystem. The rewrite focuses on building WebSocket protocol support while aiming to improve performance, reduce tail latencies, and lower resource usage.

Key quotes

· 3 pulled
This architectural redesign aims to further improve performance, reduce tail latencies and lower resource usage by leveraging io_uring's completion based I/O model.
As part of this rewrite, we migrated from Tokio to compio, a completion-based async runtime that allows us to better utilize io_uring capabilities.
However, it also presents different challenges when integrating with the wider Rust ecosystem.
Snippet from the RSS feed
In our 0.5.0 release blog post, we announced that work was underway on a complete rewrite of Apache Iggy's core architecture using io_uring with a thread-per-core, shared nothing design. This architectural redesign aims to further improve performance, red

You might also wanna read