To Execute this project, clone the repository, cd
into it, and execute:
docker-compose up
You can input the Insominia file to POST a new order
to http://localhost:8080/orchestration/order
The docker-compose file executes the following services
-
mysql - Used to store
order
andpayment
tables.Port: 3306
-
zookeeper and kafka - Kafka Broker
Ports: 9092 (Inside docker network) / 19092 (To connect from outside docker network)
-
kafkadrop - Kafka Web UI
Available at http://localhost:9000/
-
order - Written in
NodeJS/ExpressJS
, Receiveorder
requests and processorder
responses.Port: 8080
-
payment - Written in
MicroProfile/Helidon
, Receivepayment
requests and processpayment
responses.Port: 8081
-
orchestrator - Written in
Kafka Streams
. Coordinate the calls between the Kafka Topics from different services.This service doesn't expose any ports.