Skip to content

CQRS and event sourcing using dynamic groovy, spring-boot and spring-webflux

Notifications You must be signed in to change notification settings

daggerok/cqrs-eventsourcing-user-management-example

Repository files navigation

CQRS and event sourcing app Build Status

CQRS and event sourcing using dynamic groovy, spring-boot and spring-webflux

Status: in progress, implemented in-memory event store only, follow updates...

run kafka

rm -rf /tmp/c ; git clone --depth=1 https://github.com/confluentinc/cp-docker-images.git /tmp/c
docker-compose -f /tmp/c/examples/kafka-single-node/docker-compose.yml up -d
docker-compose -f /tmp/c/examples/kafka-single-node/docker-compose.yml down -v --rmi local

run app and test

./gradlew bootRun

http :8080/api/v1/messages message=hello
http :8080/api/v1/messages message=world
http :8080/api/v1/messages
http :8080

NOTE: For better developer experience during testing, use idea cURL integration tests from rest-client* files. Read more: https://www.jetbrains.com/help/idea/http-client-in-product-code-editor.html

why?

just see how everything is clear in next analitics:

  • OrderCreated(id=123)
  • ItemAdded(product=Bose Headphones, price=400)
  • FollowSimilarItemsLink(product=Sony Headphones)
  • AccessReviews()
  • VoteReviewHelpful(answer=5/5)
  • ItemAdded(product=Sony Headphones, price=450)
  • ItemRemoved(product=Bose Headphones, price=400)
  • OrderConfirmed()
  • OrderShipped()

resources:

Releases

No releases published

Packages

No packages published