Welcome to Rust Monorepo Microservices, a framework designed to streamline the development of scalable microservice architectures in Rust using a monorepository approach.
This project aims to provide developers with a cohesive toolkit for managing multiple microservices within a single repository. By adopting a monorepo strategy, it simplifies code sharing, improves modularity, and enhances overall project maintainability. Rust’s performance and safety features are leveraged to ensure robustness and efficiency in distributed systems.
- Monorepo Efficiency: Manage multiple microservices in a unified repository.
- Simplified Development: Streamline workflows with centralized code management.
- Enhanced Modularity: Promote code reuse and maintainability across services.
- Dependency Management: Simplify handling dependencies between microservices.
- Scalability: Utilize Rust’s performance advantages for scalable architectures.
- Safety: Benefit from Rust’s strong type system and memory safety guarantees.
- Rust: Version 1.79.0
- PostgreSQL
- Axum - Http Method
- Tokio - Concurrency
- sqlx | seaORM | Diesel: Query
- Sqlx: Raw Query -> Performance Cao;
- ORM:
- SeaORM: Dễ -> Syntax -> Newbie
- Diesel: Sqlx <> seaOrm. -> Trung bình khó -> Syntax Macros -> Intermediate
- bb8-redis - Redis
- Opentelemetry - Tracing
- gRPC - tonic/protobuf
- AWS - EC2 / S3
- Github Actions
- RabbitMq
- Cargo Make:
cargo install cargo-make
- Cargo Nextest:
cargo install cargo-nextest
- Cargo Watch
cargo install cargo-watch
- Build
cargo make build
- Run
cargo make run
- Customize configurations and functionalities of individual microservices as per your project requirements.
- Integrate new microservices or migrate existing ones seamlessly within the monorepo structure.
- Contributions are welcome! Please fork the repository and submit pull requests to contribute new features, improvements, or bug fixes.
- This project is licensed under the MIT License - see the LICENSE file for details.
- Inspired by the need for scalable, maintainable microservice architectures in Rust.
- Built with love by the Rust community.