/zio-kafka-showcase

Example project that demonstrates how to build Kafka based microservices with Scala and ZIO

Primary LanguageScala

zio-kafka-showcase

Example project that demonstrates how to build Kafka-based microservices with Scala and ZIO.

The system is built as a multi-module Bleep project.

Modules:

  1. Kafka module is used to provide an in-memory instance of Kafka, so before starting other services, make sure that Kafka is running.
  2. Protocol module contains messages and its JSON codecs that are used to communicate between microservices.
  3. Producer module is used to simulate incoming messages that are sent to Kafka.
  4. Processor module is responsible for consuming, enriching, and producing those enriched messages to the new Kafka topic.

How to start

  1. Install Bleep, following the instructions here
  2. Start kafka, by executing bleep run kafka
  3. Start producer, by executing bleep run producer
  4. Start processor, by executing bleep run processor

System Architecture

Alt text