Este proyecto utiliza Java 17 con Spring Boot 3.2.5 y está compuesto por tres microservicios:
- Servicio Car: Un microservicio autónomo que realiza sus propias tareas.
- Servicio Concessionaire: Un microservicio que consume el Servicio Car a través de HTTP.
- Servicio de Mensajería (query-logs): Un microservicio que recibe y registra en consola las transacciones de los servicios anteriores mediante ActiveMQ.
- Java 17
- Springboot
- Maven
- ActiveMQ
- Postgres
- MongoDb
Para la correcta configuración del servicio, se recomienda usar las configuraciones establecidas en los archivos application.properties
de cada componente.
Este microservicio funciona de forma autónoma y no requiere configuraciones adicionales.
Este microservicio realiza llamadas HTTP al Servicio Car.
Este microservicio utiliza ActiveMQ para recibir mensajes sobre el estado de las peticiones y las muestra en consola. Configura las propiedades de ActiveMQ en el application.properties
:
# Ejemplo de configuración
spring.activemq.broker-url=tcp://localhost:61616
spring.activemq.user=admin
spring.activemq.password=admin
-
Clona el repositorio:
git clone https://github.com/DuvanVilladiego/Concessionaire-MicroServices.git
-
Navega al directorio del proyecto:
cd concessionaire-microservices
-
Ejecuta el sql en tu base de datos(cars):
psql -U root -d cars -f Concessionaire.sql
-
Compila y empaqueta los microservicios con Maven:
mvn clean install
-
Ejecuta cada microservicio:
# Servicio Car java -jar springboot-test-car/target/springboot-test-car-0.0.1-SNAPSHOT.jar # Servicio Concesionarios java -jar springboot-test-concessionarie/target/springboot-test-concessionarie-0.0.1-SNAPSHOT.jar # Servicio de Mensajería java -jar springboot-test-query-log/target/springboot-test-query-log-0.0.1-SNAPSHOT.jar
- Asegúrate de que ActiveMQ esté corriendo antes de iniciar el Servicio de Mensajería.
- Revisa los logs de cada servicio para verificar que se están comunicando correctamente.
- El repositorio incluye una coleccion de Postman para falicitar la prueba de los servicios
Concessionaire.postman_collection
.