Flux is a high-performance, zero-copy message transport library for Rust
10 months ago
- #Rust
- #Message-Transport
- #High-Performance
- Flux is a high-performance message transport library for Rust, supporting IPC, UDP, and Reliable UDP.
- Implements LMAX Disruptor patterns with zero-copy memory management and lock-free operations.
- Features a ring buffer architecture with producers and consumers for efficient message passing.
- Performance optimizations include SIMD data copy, hardware CRC32, NUMA-aware allocation, and cache-line padding.
- Supports batch processing with sizes ranging from 8K to 128K slots for high throughput.
- Easy to use with minimal setup for basic message passing, demonstrated in example code.
- Offers Linux-specific optimizations like huge pages, io_uring, and NUMA awareness for maximum performance.
- Benchmarks show high throughput, with up to 173M messages per second in optimal conditions.
- Includes safety measures for unsafe code, with thorough documentation and testing.
- Available under the MIT License, with contributions welcome following project guidelines.