π RabbitMesh - Message-Driven Microservices Framework
Zero-port microservices with auto-generated APIs
RabbitMesh eliminates traditional microservice complexity by using RabbitMQ for all inter-service communication. Write business logic, get REST + GraphQL APIs automatically.
β¨ Key Features
- π₯ Zero Port Management - Services only connect to RabbitMQ
- β‘ Never Blocks - Every request spawns async task
- π― Auto-Generated APIs - Write service methods, get REST + GraphQL
- π‘οΈ Production Ready - Built-in retries, timeouts, load balancing
- π Deploy Anywhere - Docker, Kubernetes, bare metal
π Quick Start
1. Define Your Service
use ;
;
2. Start Your Service
use MicroService;
async
3. Auto-Generated API Gateway
use create_auto_router;
async
ποΈ Architecture
βββββββββββββββ βββββββββββββββ βββββββββββββββββββββββββββββββββββ
β Frontend ββββββ API Gateway ββββββ Service Mesh β
β (NextJS) βHTTPβ (Auto-Gen) βAMQPβ βββββββ βββββββ βββββββ β
β β β β β βUser β βAuth β βOrderβ ... β
βββββββββββββββ βββββββββββββββ β βββββββ βββββββ βββββββ β
β β β
β βββββββββββββββ β
β β RabbitMQ β β
β β Broker β β
βββββββ΄ββββββββββββββ΄βββββββββββββ
π¦ Crates
rabbitmesh
- Core microservice frameworkrabbitmesh-macros
- Code generation macrosrabbitmesh-gateway
- Auto-generating API gatewayexamples/ecommerce
- Complete demo application
π― Why RabbitMesh?
Traditional HTTP | RabbitMesh |
---|---|
β Port management hell | β Zero ports to manage |
β Manual load balancing | β Automatic via RabbitMQ |
β Service discovery complexity | β Auto-discovery via queues |
β Blocking request handlers | β Every request is async |
β Manual API development | β Auto-generated REST + GraphQL |
π Performance
- Latency: 3-10ms (vs 1-5ms HTTP direct)
- Throughput: Higher than HTTP (persistent connections)
- Concurrency: Unlimited (every request = async task)
- Scalability: Linear (add instances = proportional capacity)
π Getting Started
See the examples/ecommerce directory for a complete microservices demo with user management, authentication, and API gateway.
π License
MIT license