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.
Schedule and Details
The recordings of all past events are of course available for all students (including new students).
I generally announce the exact date of running the workshop each time - a month before the live event.
The Other Workshops
As you may already know, I'm running three workshops in the following few months.
I announced the full details about each of these, as well as made all three available through a single package here.