Overview
Explore transactional event sourcing using Slick for audit logging in this 40-minute conference talk from Scala Days New York 2016. Dive into the benefits of event sourcing as an alternative to traditional CRUD architectures, focusing on its implementation with relational databases and SQL. Learn how to create a persistent stream of events that drives read model changes and business logic execution. Discover the advantages of this approach, including state recreation and detailed audit logging. Through live coding, examine the 'slick-eventsourcing' micro-framework, covering core concepts such as command handlers, read model updates, and event listeners. Understand how Slick's 'DBAction' and Scala's flexibility enable an elegant DSL for building event-sourced applications with minimal dependencies. Follow along as the speaker demonstrates an example application, addressing potential challenges and providing practical insights for implementing this powerful architectural pattern.
Syllabus
Introduction
Why event sourcing
About Software Mode
Goal
Other approaches
What are events
How to represent events
Read model
Special data type
Live coding
Example application
Events table
Point of entry
Registry
Problems
Wrap up
Taught by
Scala Days Conferences