Better Software Design

98. O agregatach, eventach i Dynamic Consistency Boundary z Pawłem Pacaną

16 snips
Sep 9, 2025
Paweł Pacana, programista Ruby z Arkency i ekspert od Rails Event Store, rozmawia o dynamicznych granicach spójności w projektowaniu systemów. Eksploruje, jak zmieniające się konteksty biznesowe wpływają na spójność danych, pokazując, że statyczne podejście do agregatów nie zawsze jest wystarczające. Porusza kwestie metod tagowania i linkowania zdarzeń, a także wyzwań związanych z ich implementacją. Uczestnicy omawiają również równowagę między elastycznością a integralnością w architekturze opartej na zdarzeniach.
Ask episode
AI Snips
Chapters
Transcript
Episode notes
ANECDOTE

Projekt Zawodzących Agregatów

  • Mariusz opowiada o projekcie, gdzie tradycyjne agregaty zawodziły z powodu zmiennego rozmiaru danych i reguł biznesowych.
  • Zaimplementowali „agregat o dynamicznym kształcie”, który rozwiązał problem zrównoleglania zapisu.
INSIGHT

Płynna Granica Spójności

  • Dynamic Consistency Boundary (DCB) pozwala płynnie zmieniać granicę spójności zamiast sztywnego agregatu.
  • Dzięki temu ograniczamy contention do minimalnego zakresu potrzebnego do decyzji.
ADVICE

Waliduj Wersję Kwerendy Przy Zapisie

  • Przy DCB trzeba sprawdzić, czy stream/kwerenda nie zmieniła się między odczytem a zapisem.
  • Przekaż identyfikator ostatniego zdarzenia i waliduj warunek optimistic concurrency przed appendem.
Get the Snipd Podcast app to discover more snips from this episode
Get the app