Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/daggerok/cqrs-eventsourcing-user-management-example
CQRS and event sourcing using dynamic groovy, spring-boot and spring-webflux
https://github.com/daggerok/cqrs-eventsourcing-user-management-example
gradle groovy groovy-language spock spock-framework spock-spring spock-tests spring-boot spring-webflux
Last synced: 14 days ago
JSON representation
CQRS and event sourcing using dynamic groovy, spring-boot and spring-webflux
- Host: GitHub
- URL: https://github.com/daggerok/cqrs-eventsourcing-user-management-example
- Owner: daggerok
- Created: 2019-07-31T01:30:11.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2019-08-10T20:35:40.000Z (over 5 years ago)
- Last Synced: 2024-11-11T15:40:37.128Z (2 months ago)
- Topics: gradle, groovy, groovy-language, spock, spock-framework, spock-spring, spock-tests, spring-boot, spring-webflux
- Language: Java
- Size: 90.8 KB
- Stars: 1
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# CQRS and event sourcing app [![Build Status](https://travis-ci.org/daggerok/cqrs-eventsourcing-user-management-example.svg?branch=master)](https://travis-ci.org/daggerok/cqrs-eventsourcing-user-management-example)
CQRS and event sourcing using dynamic groovy, spring-boot and spring-webfluxStatus: _in progress, implemented in-memory event store only, follow updates..._
_run kafka_
```bash
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_
```bash
./gradlew bootRunhttp :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:
* [YouTube: Building Event Driven Systems with Spring Cloud Stream](https://www.youtube.com/watch?v=LvmPa7YKgqM&t=2673s)
* [YouTube: 2018-10 Advanced Microservices Patterns: CQRS and Event Sourcing](https://www.youtube.com/watch?v=W_wySQ0lTI4&t=1448s)