Event-Driven Design

The course describes the concepts and terminology of Event Driven Design, discusses the architectural choices and patterns available, and shows how to put it into practice with worked examples and exercises.

What you'll learn

  • Event Driven Design concepts and terminology
  • Messaging principles
  • Event Driven Design architectural choices
  • CQRS
  • Implementation examples

Prerequisites

  • System designers and developers

Course details

  • Application Architecture: Traditional architecture choices; Microservices; Microservices example; Circuit breakers
  • Messaging and Event-Driven Systems: Messaging essentials; Messaging & event-driven technologies; Features of event-driven technologies
  • A Closer Look at Messaging Systems: Message exchange patterns; Types of message
  • Event Processing Example: Introduction; Event-driven approach; Event streaming approach; Stateful event streaming approach
  • Architectural Patterns: Architecture choices; Eventual consistency; Understanding CQRS architecture
  • Specifying a CQRS Contract: Setting the scene; Defining command Classes; Defining event classes
  • Working with Commands: Sending sommands; Aggregates; Implementing command handlers
  • Working with Events: Configuring event components; Implementing event handlers
  • Integrating Messaging Systems and REST: Setting the scene; Defining a "command" REST service; Defining a "query" REST service
  • Event Sourcing: Introduction to event sourcing; Defining an event-sourced aggregate; Configuration and additional things; Running the application
  • Serialization Strategies for Event Sourcing: Data serialization; Storage options
  • Evolving Schemas: Overview; Using Protocol Buffers; Using Avro
  • Sagas: Getting started with sagas; Implementing saga behaviour; Configuration; Demo 

 

Andy Olsen - author of the course

Andy is a freelance consultant and instructor based in the UK, working mostly in the City of London and Oxford. Andy has been working with .NET since the Beta 1 days and has extensive experience in many facets of .NET development including WCF, WPF, WF, ASP.NET MVC Web development, and mobile applications. Andy has designed and written many Microsoft Official Curriculum courses in the last decade, and has been engaged as author and technical reviewer with Apress on some of their biggest selling books.

 

Other relevant courses

27. January
2 days
Classroom
26. February
3 days
Classroom
15. January
3 days
Classroom