Axon Framework started out as a framework for CQRS and Event Sourcing, and is currently used in production at many organizations around the globe. We are currently seeing another surge of interest in Axon, rooted in event-driven microservices.
This lab is an opportunity to get some hands-on experience with Axon Framework, being guided by Axon’s founder Allard Buijze. We’ll offer a choice of lab exercises, including both the absolute basics as well as more advanced scenarios like splitting a monolith into microservices.
The lab will consist of two tracks of about one hour. Participants can do both tracks or select just one of them. Track 1 is the basic track, focused on getting you started with Axon Framework. The key exercises are:
- Creating a first application with an Aggregate handling Commands, using the Event Sourcing pattern.
- Creating a view model (the read side of CQRS).
- Working with tracking event processors and perform replays.
Track 2 is the advanced track focusing on distributed applications:
- You start with either the application you built in track 1, or with an application we provide.
- Distribute command handling over multiple nodes, using a Spring Cloud distributed command bus.
- Distribute event handling over multiple nodes, using a RabbitMQ message broker.
Bring your own laptop, with your favorite IDE, JDK 8 and a Wi-Fi connection. Lab material will be provided through GitHub. It is recommended (but not strictly required) to have Maven and Git installed as well. For track 2, it is recommended (but not strictly required) to have Docker installed to run the RabbitMQ broker.