Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Event Sourcing RubySPBConf 2k18

Event Sourcing RubySPBConf 2k18

Avatar for Anton Davydov

Anton Davydov

June 10, 2018
Tweet

More Decks by Anton Davydov

Other Decks in Programming

Transcript

  1. me

  2. Cons • we have only current state of the system

    • impossible to understand what happened before
  3. – Event Sourcing pattern
 https://docs.microsoft.com/en-us/azure/architecture/patterns/event-sourcing “Instead of storing just the

    current state of the data in a domain, use an append-only store to record the full series of actions taken on that data”
  4. DDD

  5. • You don’t work with tables you work with events

    • Experemental data structures • Easy to change database implementations
  6. • Easy to add instances for service • Can be

    written on any language and you can call it from any app • Persistance
  7. • Hard for understand and complicated abstraction • Not popular

    in ruby and bad tooling here • Developers need deprogramming
  8. • Hard to get state • Hard to understand the

    whole chain of events • Another architecture type
 with different DB structure
  9. • Async world • Versions and versions compatibility • Updating

    or deleting events • Eventual Consistency
  10. – Martin Fowler “You can use a different model to

    update information than the model you use to read information”
  11. DDD