Event Sourcing is one of those things that is highly highly useful but has a steep learning curve. Much like TDD, or like functional programming, you really have to push through the initial resistance.
But as soon as an application becomes even moderately complex, Event Sourcing and CQRS are a fantastic base to build your architecture on.
This workshop is focused on getting you from a CQRS and Event Sourcing novice to having a good understanding of the architecture and where to use it.
Beyond the theoretical aspects, the main goal is to go into the code through a full project implementation. We're going to build out a project from the ground up with Event Sourcing.
Here's what's on the agenda - we are going to:
- Implement our first Event Store storing raw JSON event data
- Separate Reads from Writes in a Spring REST API using CQRS
- Go from Commands to Events with a Spring implementation (using the new event support)
- Project Events into useful, eventually-consistent views
- Leverage Polyglot Persistence for our Projections
- Discuss transactional semantics across Projections
- Deal with Eventual Consistency from the client side
- A full Spring Boot project template you can start from
Finally, we're going to see how this architectural style naturally leads to a mature, decoupled microservice system.
The Other Workshops
All three available through a single package here.