This project is a comprehensive demonstration of building a microservices architecture using Spring Boot. It showcases the design, development, and deployment of microservices-based applications, focusing on scalability, maintainability, and efficiency. Through this project, various aspects of microservices development are covered, including inter-service communication, service discovery, centralized configuration, and containerization with Docker and Docker Compose.
- Programming Language: Java 18
- Framework: Spring Boot 3.3.1
- Build Tool: Maven 3.9.8
- Containerization: Docker, Docker Compose
- Service Discovery: Eureka
- Configuration Management: Spring Cloud Config
- Fault Tolerance: Resilience4j
- Monitoring and Logging: Spring Boot Actuator
- Java 17
- Maven 3.9.8
- Docker
- Docker Compose
git clone https://github.com/Aymen-Moulehi/Microservices.git
cd microservices-springboot
Navigate to each microservice directory and build the project using Maven:
cd eureka
mvn clean install
cd ../config
mvn clean install
cd ../galaxy
mvn clean install
cd ../planet
mvn clean install
cd ../gateway
mvn clean install
From the root directory of the project, run:
docker-compose up --build
This project is licensed under the MIT License.
This project provided valuable hands-on experience in designing and implementing a microservices architecture using Spring Boot. It covered essential microservices concepts and tools, preparing for real-world applications where scalability, resilience, and maintainability are crucial.