A flexible and lightweight messaging library for distributed systems built with Rust and Tokio.
Overview
msg-rs is a messaging library that was inspired by projects like ZeroMQ and Nanomsg.
It was built because we needed a Rust-native messaging library like those above.
Documentation
The 📖 MSG-RS Book contains detailed information on how to use the library.
Features
- Multiple socket types
- Request/Reply
- Publish/Subscribe
- Pluggable transport layers
- TCP (with TLS support)
- QUIC (with TLS support)
- IPC
- Useful stats: latency, throughput, packet drops
- Durable IO abstraction (built-in retries and reconnections)
- Custom wire protocol with support for authentication and compression
- Network simulation mode with dummynet & pfctl
- Extensive benchmarks
- Integration tests
MSRV
The minimum supported Rust version is 1.89.0 (see rust-toolchain.toml).
Contributions & Bug Reports
If you are interested in contributing or have found a bug, please check out the contributing guide. Please report any bugs or doubts you encounter by opening a Github issue.
Additionally, you can reach out to us on Discord if you have any questions or just want to chat.
License
This project is licensed under the Open Source MIT license.
