Event Sourcing is a powerful pattern that maintains an immutable sequence of events that multiple consumers can access. Today, it is used by some of the largest companies in the world to rapidly scale, iterate, and evolve their systems. The key benefits for software architects include:
- Auditing: Events are immutable and store the full history of the state of the system, providing a detailed audit trail of all system activity.
- Time Travel: By storing events, you have the ability to restore the state of the system to any previous point in time.
- Service autonomy: If an event-consuming service goes down it can quickly “catch up” when it recovers by consuming the events that occurred while it was offline.
Common challenges in building an Event Sourcing app to scale are handling schema change, retaining messages indefinitely, and supporting multiple consumers. Join StreamNative’s Developer Advocate, David Kjerrmugaard, to learn how to use Apache Pulsar to build event sourcing applications, common use cases, and how Apache Pulsar’s persistent storage of event streams can simplify this process.
What You'll Learn:
- What event sourcing is and common uses cases
- Requirements for event sourcing - Number of topics, tiered storage, and etc.
- How to implement an event sourcing pattern using Apache Pulsar