Event Sourcing: Practical Introduction
octubre 24, 2022 2022-12-21 16:18Event Sourcing: Practical Introduction
Event Sourcing: Practical Introduction
Requisitos
- Understanding of the basic building blocks of the application design
- Experience in one of the languages and platforms: C#, Java, TypeScript (code exercises will be done using them)
- Positive and open-minded attitude ;)
Event Sourcing allows you to create business-related applications. Recording events (facts) about the business process gives a complete understanding of your workflow and reflects them in the code. It is wrongly considered a complicated pattern that is challenging to apply in practice.
What will you learn during this Course?
The workshop will be hands-on and teach you how to use Event Sourcing, giving you solid foundations. You will understand after them:
- When and how to use it and what benefits it brings,
- How to reflect your business logic in the code using events,
- Differences to the classical approach,
- Different tools such as Marten and EventStoreDB and the differences between them,
- How to use Event Sourcing on your system,
- Challenges related to Event Sourcing and recommended solutions.
Course Topics
- Introduction to Event Sourcing. Basic terminology (event, stream of events, command), differences from the classical approach.
- What is Event Sourcing, and how is it different from Event Streaming. Advantages and disadvantages.
- Write model and data consistency guarantees.
- Various ways of handling business logic: Aggregates, Command Handlers, functional approach.
- Projections and best practices for building a read model on the.
- Challenges in Event Sourcing and EDA: delivery guarantees, event processing order, idempotency, etc.
- Saga, Choreography, Process Manager, handling distributed processes.
- Event Sourcing in the context of application architecture, integration with other approaches.
- Good and bad practices in modelling and handling events.
- Event Sourcing on production, evolution, event versioning, etc.
Curriculum is empty