This example is meant to demonstrate the basic concepts of working with microservices with asynchronous events using no framework.
Services are separated into 4 directories and each of them run separately. You can find out about each one in their directory!
- Requester: Initializes the flow by sending a request to Broker.
- Broker: An interface between Requester, Service A, Database and, Kafka.
- Service A: Kafka consumer.
- Service B: Kafka consumer.
- PHP v7.4
- Postgres v10
- Kafka v2
- Docker v3.7
It's as simple as it looks like! You can start all services using docker compose.✨
Take a note that Kafka consumes a lot of memory, so make sure that you have enough memory available in your docker
$ docker-compose up -d