Overview
Explore event sourcing and Command Query Responsibility Segregation (CQRS) in this comprehensive Scala Days Copenhagen 2017 conference talk. Gain a quick introduction to these scalable patterns for managing application state, then dive into the Lagom Persistence module of the Lagom Microservices Framework. Learn how to implement these concepts in Scala, understand the underlying mechanisms, and examine potential challenges. Compare alternative implementations and discover key factors to consider when evaluating different approaches. Through examples like cargo tracking, uncover the benefits of domain-driven design, event handling, and persistent entities. Investigate scalability, efficiency, and continuous read projections in event sourcing. Conclude with a look at Scala frameworks and a Q&A session to solidify your understanding of these powerful patterns.
Syllabus
Introduction
Example
Why I dont use a relational database
Scaling
Destructive Operations
Cargo Tracking
Unlearning
DomainDriven Design
What is an Event
How do we implement this
Code
Aggregate
Commands
State
Persistent Entity
Command Handlers
Persistence
Validation
Cancellation
Event Handler
Service Describing
Demo
Cluster Carding
Trance
Relational Approach
Scalability
Efficient
Event Sourcing
Continuous Read
Projections
Stream Events
Scala frameworks
Fancy QRS
Eventuate
Rethinking
Un unlearn
Questions
Taught by
Scala Days Conferences