mxsm/rocketmq-rust
π Apache RocketMQ built in Rust π¦ β faster, safer, and more memory-efficient. Powering high-performance messaging for the AI era, with AI Agent, MCP, and AI-SRE capabilities.
What it solves
RocketMQ-Rust provides a high-performance, memory-safe, and reliable distributed message queue system for the Rust ecosystem. It serves as an unofficial reimplementation of Apache RocketMQ, allowing Rust developers to use enterprise-grade message middleware without relying on the Java-based original, while maintaining full protocol compatibility for interoperability between Rust and Java implementations.
How it works
The project implements a distributed architecture consisting of several core components:
- Name Server: Handles service discovery and routing coordination.
- Broker: The engine for message storage and delivery, managing topics, queues, and consumer groups.
- Controller: Manages high availability and failover workflows.
- Producer and Consumer Clients: SDKs for publishing and consuming messages using push or pull models.
- Store: A local storage engine optimized for sequential writes, with support for CommitLogs and tiered storage.
- Proxy: A gateway layer for client access and protocol integration.
Who itβs for
This is designed for Rust developers and system architects who need a production-ready distributed messaging system that leverages Rust's memory safety and concurrency model to achieve high throughput and minimal resource overhead.
Highlights
- Full Protocol Compatibility: Interoperates with Apache RocketMQ Java clients and servers.
- Memory Safety: Eliminates data races and null pointer dereferences via Rust's ownership model.
- Comprehensive Tooling: Includes an admin CLI, a TUI for administration, and multiple dashboard options (Web, Tauri, and GPUI).
- Flexible Storage: Supports local storage and RocksDB-backed implementations.
- Async-Native: Built using the Tokio runtime for efficient asynchronous processing.
Related
- Project
- Project
- Project
- Project
- Project