Event Sourcing

rw-book-cover

Metadata

  • Author: martinfowler.com
  • Full Title: Event Sourcing
  • Category: articles
  • Document Tags: parloa-prep stateful-workflows
  • Summary: Event Sourcing records every change to application state as a sequence of events.
    You can rebuild state by replaying events, which helps debugging, testing, and scaling.
    Care is needed for external systems and code changes because replays can cause duplicate or out-of-order effects.
  • URL: https://martinfowler.com/eaaDev/EventSourcing.html

Highlights

  • The fundamental idea of Event Sourcing is that of ensuring every change to the state of an application is captured in an event object, and that these event objects are themselves stored in the sequence they were applied for the same lifetime as the application state itself. (View Highlight)
  • Subversion uses complete rebuilds whenever you use dump and restore to move stuff between repository files. I’m not aware of any that do event replay since they are not particularly interested in that information. (View Highlight)
    • Note: This is basically git rebase.