Event Driven Architecture with Spring Boot
- Frontend only communicates with Backend (BFF) - REST API
- Backend can then communicates with all other lower level Services using ActiveMQ - Pub/Sub
- All the lower level Services are - Inventory, Order (i.e Assignment) & Amazon
- The communication media between all the lower level Services is ActiveMQ - Pub/Sub
Frontend -> Backend
Backend -> <- Inventory -> <- Order -> <- Amazon
- Frontend -> React
- Backend -> REST API, Spring Boot, ActiveMQ
- Inventory -> Spring Boot, Mongodb, ActiveMQ
- Order -> Spring Boot, Postgres, ActiveMQ
- Amazon -> Spring Boot, Mongodb, ActiveMQ
You can build all the child modules using parent pom.xml and then run all the application using the following commands,
mvn package
docker-compose up --build
http://localhost:8085/v1/swagger-ui/index.html?configUrl=/v1/api-docs/swagger-config#/
username = admin
password = admin