Time: 13:00 - 17:00 CEST (7:00 am - 11:00 am EDT)
Master the principles and patterns underpinning event-driven systems and the methodologies and technologies essential to designing and building them.
Becoming an event-driven practitioner requires:
- A firm grasp of high-level concepts related to storing and streaming events.
- The ability to properly analyze your business domain through methods such as Event Modeling, and creating a blueprint for what to build.
- A technology platform that offers a rich developer framework and key infrastructure components, both of which Axon Framework and Axon Server provide.
Join this unique opportunity that guides you through the theory, design and implementation of an event-driven system using a real-world scenario (a bike rental service), with hands-on modeling and coding during two intensive half-day sessions.
At the end of this masterclass, you’ll have gained the requisite insights and experience to embark on your event-driven journey!
Part 1: Theory
- Why a well-designed domain model is key to tackling software complexity (and avoiding the ”big ball of mud”).
- The building blocks of a domain model - bounded contexts, aggregates, repositories, events and more.
- The notion of separate command (write) and query (read) models for managing application state.
- Asynchronous communication via messaging; declaring, sending and handling commands, events and queries; what being ”event-driven” entails.
- Event Sourcing (and how it differs from Event Streaming), and the business and technical advantages of storing a sequence of events as a single source of truth in your system.
Part 2: Design
In this part, a collaborative modeling technique known as Event Modeling (https://eventmodeling.org/) is used to analyze and model a specific business domain (a bike rental service), resulting in a blueprint for implementing an event-driven system.
Part 3: Implementation
- Applying Event Sourcing in a JVM environment using Axon Framework.
- Building aggregates and handling commands.
- Event handling - creating query models (projections), triggering external activities and managing transactions via sagas.
- Working with Axon Server as an event store and managing key properties of a (distributed) event-sourced system - immutability, eventual consistency and location transparency.
- Scaling out from a (modular) monolith to a microservices-based architecture.
- Testing and deploying an event-sourced system.
PrerequisitesBasic proficiency in Java (and familiarity with Spring Framework).
The Axon Framework and Axon Server are utilized for the exercises and demonstrations.
Let us know via firstname.lastname@example.org, and we will get back to you asap.