/event-sourcing-kafka-streams

Demo code from my talk @ Codemotion Milan 2018 - "Building event sourced systems with Kafka Streams"

Primary LanguageScalaMIT LicenseMIT

Event Sourcing with Kafka Streams

This is a POC for using Kafka Streams as a backbone for an event sourced system.

Running the project locally

Setup

  1. Run Zookeeper / Kafka (help)

  2. Run MySQL (help)

  3. Install the schema

  4. Install sbt (help)

  5. Build the project:

    $ sbt assembly
    
  6. Create the topics (edit config/local.properties as needed):

    $ bin/setup.sh config/local.properties
    

Running

  1. Run the command handler:

    $ bin/commandhandler.sh config/local.properties
    
  2. Run the invoices list projector:

    $ bin/projector.sh config/local.properties
    
  3. Run the web server:

    $ bin/web.sh config/local.properties
    

If everything worked, you should be able to see the app running at http://localhost:8080/index.html

License

Copyright © 2018 Amitay Horwitz

Distributed under the MIT License