In current PoC we build a naive event driven architecture (EDA) with the goal to explore Kafka and popular patterns of interacting with it
- use source connectors to propagate DB changes (aka CDC)
- use kafka stream API to look up product and client data (ad hoc). Orders API can be scaled out trivially, just by increasing the number of instances thanks to Kafka stream API
- use sink connector to track places orders
cd ./scripts && start.sh
cd ./scripts && stop.sh
- localhost:9021
localhost:8081
cd ./scripts/console-client && ./pub-topic-message.sh topic_name key:value
cd ./scripts/console-client && ./get-topics.sh
localhost:80
- docker compose
- jc
- curl
- bash
- ubuntu (or any debian linux)
- to run docker compose on ubuntu you may want to chown the socket docker uses as
sudo chown $(whoami):$(whoami) /var/run/docker.sock
- debezium configuration process takes time, so it may take running ./start.sh 2 times in a row to set up debezium connector
- to run swagger in browser don't forget to install/enable CORS plugin