From 38f4ea38678aa5b6095e3fd76b8d9a8175112443 Mon Sep 17 00:00:00 2001 From: Oskar Dudycz Date: Sat, 2 Oct 2021 11:53:47 +0200 Subject: [PATCH] Updated links with section "This is Not Event Sourcing" --- README.md | 40 ++++++++++++++++++++++++++-------------- 1 file changed, 26 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index 258b6896a..b37b8668a 100644 --- a/README.md +++ b/README.md @@ -48,11 +48,11 @@ Tutorial, practical samples and other resources about Event Sourcing in .NET Cor - [13.12 Testing](#1312-testing) - [13.13 CQRS](#1313-cqrs) - [13.14 Tools](#1314-tools) - - [13.15 Event Sourcing vs Messaging](#1315-event-sourcing-vs-messaging) - - [13.15 Event processing](#1315-event-processing) - - [13.16 Distributed processes](#1316-distributed-processes) - - [13.17 Domain Driven Design](#1317-domain-driven-design) - - [13.18 Architecture Weekly](#1318-architecture-weekly) + - [13.15 This is NOT Event Sourcing but Event Streaming](#1315-this-is-not-event-sourcing-but-event-streaming) + - [13.16 Event processing](#1316-event-processing) + - [13.17 Distributed processes](#1317-distributed-processes) + - [13.18 Domain Driven Design](#1318-domain-driven-design) + - [13.19 Architecture Weekly](#1319-architecture-weekly) ## 1. Event Sourcing @@ -608,16 +608,16 @@ The simplest way to start is **installing the [project template](https://github. ## 13. Other resources ### 13.1 Introduction -- πŸ“ [Event Store - A Beginner’s Guide to Event Sourcing](https://www.eventstore.com/event-sourcing) +- πŸ“ [Event Store - A Beginner's Guide to Event Sourcing](https://www.eventstore.com/event-sourcing) - 🎞 [Greg Young - CQRS & Event Sourcing](https://youtube.com/watch?v=JHGkaShoyNs) - πŸ“ [Jay Kreps - Why local state is a fundamental primitive in stream processing](https://www.oreilly.com/ideas/why-local-state-is-a-fundamental-primitive-in-stream-processing) -- πŸ“ [Microsoft - Exploring CQRS and Event Sourcing](https://docs.microsoft.com/en-us/previous-versions/msp-n-p/jj554200(v=pandp.10)) - πŸ“° [Lorenzo Nicora - A visual introduction to event sourcing and cqrs](https://www.slideshare.net/LorenzoNicora/a-visual-introduction-to-event-sourcing-and-cqrs) - 🎞 [Mathew McLoughlin - An Introduction to CQRS and Event Sourcing Patterns](https://www.youtube.com/watch?v=9a1PqwFrMP0) - 🎞 [Emily Stamey - Hey Boss, Event Sourcing Could Fix That!](https://www.youtube.com/watch?v=mw7D6OJpsIA) - 🎞 [Derek Comartin - Event Sourcing Example & Explained in plain English](https://www.youtube.com/watch?v=AUj4M-st3ic) - 🎞 [Duncan Jones - Introduction to event sourcing and CQRS](https://www.youtube.com/watch?v=kpM5gCLF1Zc) - 🎞 [Roman Sachse - Event Sourcing - Do it yourself series](https://www.youtube.com/playlist?list=PL-nSd-yeckKh7Ts5EKChek7iXcgyUGDHa) +- πŸ“ [Christian Stettler - Domain Events vs. Event Sourcing](https://www.innoq.com/en/blog/domain-events-versus-event-sourcing/) - 🎞 [Martin Fowler - The Many Meanings of Event-Driven Architecture](https://www.youtube.com/watch?v=STKCRSUsyP0&t=822s) - πŸ“ [Martin Fowler - Event Sourcing](https://martinfowler.com/eaaDev/EventSourcing.html) - πŸ“ [Dennis Doomen - 16 design guidelines for successful Event Sourcing](https://www.continuousimprover.com/2020/06/guidelines-event-sourcing.html) @@ -628,6 +628,7 @@ The simplest way to start is **installing the [project template](https://github. - πŸ“ [Joseph Choe - Event Sourcing, Part 1: User Registration](https://josephchoe.com/event-sourcing-part-1) - 🎞 [Steven Van Beelen - Intro to Event-Driven Microservices using DDD, CQRS & Event sourcing](https://www.youtube.com/watch?v=F0g5B4F9MMs) - πŸ“ [Yves Lorphelin - The Inevitable Event-Centric Book ](https://github.com/ylorph/The-Inevitable-Event-Centric-Book/issues) +- πŸ“ [Microsoft - Exploring CQRS and Event Sourcing](https://docs.microsoft.com/en-us/previous-versions/msp-n-p/jj554200(v=pandp.10)) ### 13.2 Event Sourcing on production - πŸ“ [Leo Gorodinski - Scaling Event-Sourcing at Jet](https://medium.com/@eulerfx/scaling-event-sourcing-at-jet-9c873cac33b8) @@ -642,7 +643,7 @@ The simplest way to start is **installing the [project template](https://github. - 🎞 [Greg Young - Why Event Sourced Systems Fail](https://www.youtube.com/watch?v=FKFu78ZEIi8) - 🎞 [Kacper Gunia - War Story: How a Large Corporation Used DDD to Replace a Loyalty System](https://www.youtube.com/watch?v=a1pRsAi9UVs) - 🎞 [Vladik Khononov - The Dark Side of Events](https://www.youtube.com/watch?v=URYPpY3SgS8) -- πŸ“ [Pedro Costa - Migrating to Microservices and Event-Sourcing: the Dos and Dont’s](https://hackernoon.com/migrating-to-microservices-and-event-sourcing-the-dos-and-donts-195153c7487d) +- πŸ“ [Pedro Costa - Migrating to Microservices and Event-Sourcing: the Dos and Dont's](https://hackernoon.com/migrating-to-microservices-and-event-sourcing-the-dos-and-donts-195153c7487d) - 🎞 [Dennis Doomen - An Event Sourcing Retrospective - The Good, The Bad and the Ugly](https://www.youtube.com/watch?v=goknSHnTD4M) - 🎞 [David Schmitz - Event Sourcing You are doing it wrong](https://www.youtube.com/watch?v=GzrZworHpIk) - πŸ“ [Dennis Doomen - A recipe for gradually migrating from CRUD to Event Sourcing](https://www.eventstore.com/blog/a-recipe-for-gradually-migrating-from-crud-to-event-sourcing) @@ -665,6 +666,8 @@ The simplest way to start is **installing the [project template](https://github. ### 13.6 Storage - πŸ“ [Greg Young - Building an Event Storage](https://cqrs.wordpress.com/documents/building-event-storage/) +- πŸ“ [Adam Warski - Implementing event sourcing using a relational database](https://softwaremill.com/implementing-event-sourcing-using-a-relational-database/) +- 🎞 [Greg Young - How an EventStore actually works](https://www.youtube.com/watch?v=YUjO1wM0PZM) - 🎞 [Andrii Litvinov - Event driven systems backed by MongoDB](https://www.youtube.com/watch?v=w8Z-kPz1cXw) - πŸ“ [Dave Remy - Turning the database inside out with Event Store](https://www.eventstore.com/blog/turning-the-database-inside-out) @@ -710,11 +713,20 @@ The simplest way to start is **installing the [project template](https://github. - πŸ› οΈ [SQLStreamStore - Stream Store library targeting RDBMS based implementations for .NET ](https://github.com/SQLStreamStore/SQLStreamStore) - πŸ› οΈ [Equinox - .NET Event Sourcing library with CosmosDB, EventStoreDB, SqlStreamStore and integration test backends](https://github.com/jet/equinox) -### 13.15 Event Sourcing vs Messaging +### 13.15 This is NOT Event Sourcing but Event Streaming - πŸ“ [Kacper Gunia - EventStoreDB vs Kafka](https://domaincentric.net/blog/eventstoredb-vs-kafka) - πŸ“ [Vijay Nair - Axon and Kafka - How does Axon compare to Apache Kafka?](https://axoniq.io/blog-overview/axon-and-kafka-how-does-axon-compare-to-apache-kafka) - -### 13.15 Event processing +- πŸ“ [Jesper HammarbΓ€ck - Apache Kafka is not for Event Sourcing](https://serialized.io/blog/apache-kafka-is-not-for-event-sourcing/) +- πŸ“ [Confluent - Event sourcing, CQRS, stream processing and Apache Kafka: What's the connection?](https://www.confluent.io/blog/event-sourcing-cqrs-stream-processing-apache-kafka-whats-connection/) +- 🎞 [InfoQ - Building Microservices with Event Sourcing and CQRS](https://www.infoq.com/presentations/microservices-event-sourcing-cqrs/) +- πŸ“ [AWS - Event sourcing pattern](https://docs.aws.amazon.com/prescriptive-guidance/latest/modernization-data-persistence/service-per-team.html) +- πŸ“ [Andela - Building Scalable Applications Using Event Sourcing and CQRS](https://andela.com/insights/building-scalable-applications-using-event-sourcing-and-cqrs/) +- πŸ“ [WiX Engineering - The Reactive Monolith - How to Move from CRUD to Event Sourcing](https://www.wix.engineering/post/the-reactive-monolith-how-to-move-from-crud-to-event-sourcing) +- πŸ“ [Nexocode - CQRS and Event Sourcing as an antidote for problems with retrieving application states](https://nexocode.com/blog/posts/cqrs-and-event-sourcing/) +- πŸ“ [coMakeIT - Event sourcing and CQRS in Action](https://www.comakeit.com/blog/event-sourcing-and-cqrs-in-action/) +- πŸ“ [Debezium - Distributed Data for Microservices β€” Event Sourcing vs. Change Data Capture](https://debezium.io/blog/2020/02/10/event-sourcing-vs-cdc/) + +### 13.16 Event processing - πŸ“ [Kamil Grzybek - The Outbox Pattern](http://www.kamilgrzybek.com/design/the-outbox-pattern/) - 🎞 [Dev Mentors - Inbox & Outbox pattern - transactional message processing](https://www.youtube.com/watch?v=ebyR5RPKciw) - πŸ“ [Jeremy D. Miller - Jasper's "Outbox" Pattern Support](https://jeremydmiller.com/2018/04/16/jaspers-outbox-pattern-support/) @@ -723,7 +735,7 @@ The simplest way to start is **installing the [project template](https://github. - πŸ“ [NServiceBus - Outbox](https://docs.particular.net/nservicebus/outbox/) - πŸ“ [Alvaro Herrera - Implement SKIP LOCKED for row-level locks](https://www.depesz.com/2014/10/10/waiting-for-9-5-implement-skip-locked-for-row-level-locks/) -### 13.16 Distributed processes +### 13.17 Distributed processes - πŸ“ [Hector Garcaa-Molrna, Kenneth Salem - Sagas](https://www.cs.cornell.edu/andru/cs711/2002fa/reading/sagas.pdf) - 🎞 [Caitie McCaffrey - Applying the Saga Pattern](https://www.youtube.com/watch?v=xDuwrtwYHu8) - 🎞 [Udi Dahan - If (domain logic) then CQRS or Saga?](https://www.youtube.com/watch?v=fWU8ZK0Dmxs&app=desktop) @@ -741,7 +753,7 @@ The simplest way to start is **installing the [project template](https://github. - πŸ“ [NServiceBus sagas: Integrations](https://docs.particular.net/tutorials/nservicebus-sagas/3-integration) - πŸ“ [Denis Rosa (Couchbase) - Saga Pattern | Application Transactions Using Microservices](https://blog.couchbase.com/saga-pattern-implement-business-transactions-using-microservices-part/) -### 13.17 Domain Driven Design +### 13.18 Domain Driven Design - πŸ“– [Eric Evans - DDD Reference](https://www.domainlanguage.com/ddd/reference/) - πŸ“ [Eric Evans - DDD and Microservices: At Last, Some Boundaries!](https://www.infoq.com/presentations/ddd-microservices-2016) - πŸ“– [Domain-Driven Design: The First 15 Years](https://leanpub.com/ddd_first_15_years/) @@ -750,7 +762,7 @@ The simplest way to start is **installing the [project template](https://github. - πŸ“– [DDD Quickly](https://www.infoq.com/minibooks/domain-driven-design-quickly) - πŸ“ [Vaughn Vernon - Reactive DDD: Modeling Uncertainty](https://www.infoq.com/presentations/reactive-ddd-distributed-systems) -### 13.18 Architecture Weekly +### 13.19 Architecture Weekly If you're interested in Architecture resources, check my other repository: https://github.com/oskardudycz/ArchitectureWeekly/. It contains a weekly updated list of materials I found valuable and educational.