HackerNews

Apache IggyにおけるWebSocketの構築:io_uringと完了ベースのI/Oを使用して

Show HN: Building WebSocket in Apache Iggy with Io_uring and Completion Based IO

https://iggy.apache.org/blogs/2025/11/17/websocket-io-uring/


この記事では、Apache Iggyのコアアーキテクチャをio_uringを用いて再設計し、WebSocketサポートを追加する過程を紹介します。この再設計は、スレッドごとのコア設計とリソース使用量の削減を目的としています。特に、完了ベースのI/Oモデルを活用することで、メッセージストリーミングのパフォーマンスを向上させました。WebSocketはブラウザクライアントやストリーミングダッシュボードに有用ですが、RustのWebSocketライブラリは主にポーリングベースのI/Oに依存しているため、地域主要なI/Oモデルとは互換性がありません。著者は、compio-wsという新しいWebSocket実装を開発し、異なるI/Oモデルを橋渡しする時に直面した課題を詳述しています。