Krótko żyjące strumienie

W Event Sourcingu każdy rekord trzyma swoje zdarzenia w jednym streamie. Jeśli stream żyje wiecznie, ciągle rośnie: wczytuje się coraz wolniej, trudniej go zmienić, a ty trzymasz dane, których nikt nie potrzebuje. Większość streamów nie musi żyć tak długo, bo większość procesów biznesowych ma naturalny cykl, jak zmiana kasjerska albo miesiąc rozliczeniowy.

Pierwszy artykuł pokazuje w C#, jak taki cykl zamodelować. Każda zmiana kasjerska ma własny stream. Gdy się kończy, ostatnie zdarzenie przenosi to, czego potrzebuje kolejna zmiana, np. stan gotówki w szufladzie. Dzięki temu żaden stream nie trzyma całej historii kasy. Księgowi nazywają to zamknięciem ksiąg.

Drugi artykuł dotyczy danych bez naturalnego końca, takich jak dane firmy czy adresy. Zobaczysz, kiedy lepiej trzymać je po prostu jako stan, a jeśli zostajesz przy zdarzeniach, jak pozbyć się starych.

  1. Implementing Closing the Books pattern

    2024-02-17No one knows who invented Event Sourcing. I overheard that Hammurabi did. Why? Because he standardised the first set of rules of accounting. Event Sourcing works as…
  2. Should you always keep streams short in Event Sourcing?

    2024-02-24In the last article and others I did my best explaining why keeping streams short is important in Event Sourcing. I also showed you how. That should take you far enough…