Event Sourcing: Ein Deep Dive mit Golo Roden
Speziell beim Debuggen stellen wir uns oft die Frage “Wie kam dieser Datensatz nun in diesen Zustand?”. Nachvollziehbarkeit ist da oft schwer. Wenn man Glück hat, gibt es irgendwo ein Log. Wenn man Pech hat, hat man nach der erfolglosen Log-Suche ein neues Ticket, um ein Log einzubauen. Wäre es nicht irgendwie cool, alle Zustandsänderungen zu protokollieren bzw. zu speichern? Oder noch besser: Dieses Verhalten als First-Class-Konzept in meiner App zu behandeln?
Wenn man das Ganze weiter denkt, landet man oft beim Thema “Event Sourcing”. Event … wat?
In dieser Podcast-Episode machen wir mal einen Deep Dive ins Thema Event Sourcing. Wir klären, was Event Sourcing eigentlich ist, welches Problem es eigentlich löst, wie technische Implementierungen aussehen können, was Command Query Responsibility Segregation (CQRS) und Domain Driven Design damit zu tun haben, wann man doch lieber Abstand von Event Sourcing halten sollte und welche Tools und Datenbanken dich dabei unterstützen.
Bonus: Wie viele Stadtbibliotheken nutzen eigentlich Event Sourcing?
Unsere aktuellen Werbepartner findest du auf https://engineeringkiosk.dev/partners
Das schnelle Feedback zur Episode:
Feedback
- EngKiosk Community: https://engineeringkiosk.dev/join-discord
- Buy us a coffee: https://engineeringkiosk.dev/kaffee
- Email: [email protected]
- LinkedIn: https://www.linkedin.com/company/engineering-kiosk/
- Mastodon: https://podcasts.social/@engkiosk
- Bluesky: https://bsky.app/profile/engineeringkiosk.bsky.social
- Twitter: https://twitter.com/EngKiosk
Links
- the native web GmbH: https://thenativeweb.io/
- YouTube-Kanal von Golo Roden: https://www.youtube.com/@thenativeweb
- Engineering Kiosk Episode #117 Vanilla Web: Niedrige Kopplung & hohe Kohäsion mit Golo Roden von the native web: https://engineeringkiosk.dev/podcast/episode/117-vanilla-web-niedrige-kopplung-hohe-koh%C3%A4sion-mit-golo-roden-von-the-native-web/
- Engineering Kiosk Episode #162 Event Sourcing & Märchen mit Golo Roden von the native web: https://engineeringkiosk.dev/podcast/episode/162-event-sourcing-m%C3%A4rchen-mit-golo-roden-von-the-native-web/
- Microservice.io - Pattern: Event sourcing: https://microservices.io/patterns/data/event-sourcing.html
- Martin Fowler - Event Sourcing: https://martinfowler.com/eaaDev/EventSourcing.html
- Event Sourcing auf Wikipedia: https://de.wikipedia.org/wiki/Event_Sourcing
- CloudEvents: https://cloudevents.io/
- CloudEvents Spezifikation: https://github.com/cloudevents/spec/blob/main/cloudevents/spec.md
- Engineering Kiosk Episode #146 Warum ist Doom so faszinierend für die Software-Entwicklung?: https://engineeringkiosk.dev/podcast/episode/146-warum-ist-doom-so-faszinierend-f%C3%BCr-die-software-entwicklung/
- Das Recht auf Löschung / "Recht auf Vergessenwerden" (Art. 17 DSGVO): https://www.bfdi.bund.de/DE/Buerger/Inhalte/Allgemein/Betroffenenrechte/Betroffenenrechte_L%C3%B6schung_Vergessenwerden.html
- EventStoreDB / Kurrent: https://www.kurrent.io/
- Change Data Capture: https://en.wikipedia.org/wiki/Change_data_capture
- CQRS – das einzige Video, das Du brauchst: https://www.youtube.com/watch?v=hP-2ojGfd-Q
- Event-Sourcing – das einzige Video, das Du brauchst: https://www.youtube.com/watch?v=ss9wnixCGRY
- Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems: https://dataintensive.net/
Sprungmarken
(00:00:00) Intro
(00:01:12) Event Sourcing mit Golo Roden
(00:06:57) Info/Werbung
(00:07:57) Wie kommt man zum Thema Event Sourcing?
(00:11:03) Explain me like I am 5: Was ist Event Sourcing?
(00:19:30) Nomenklatur im Event Sourcing und Standards
(00:27:07) Welches Problem löst Event Sourcing?
(00:35:36) Wie sieht eine technische Implementierung von Event Sourcing aus?
(00:47:53) Command Query Responsibility Segregation (CQRS) und Domain Driven Design
(00:53:54) Herausforderung und Nachteile bei Event Sourcing
(01:04:57) Event Sourcing Systeme und Datenbanken
(01:25:39) Technische Tipps, Libraries und weitere Ressourcen für den Einstieg
Hosts
- Wolfgang Gassler (https://gassler.dev)
- Andy Grunwald (https://andygrunwald.com/)
Feedback
- EngKiosk Community: https://engineeringkiosk.dev/join-discord
- Buy us a coffee: https://engineeringkiosk.dev/kaffee
- Email: [email protected]
- LinkedIn: https://www.linkedin.com/company/engineering-kiosk/
- Mastodon: https://podcasts.social/@engkiosk
- Bluesky: https://bsky.app/profile/engineeringkiosk.bsky.social