/ / So ordnen Sie Aggregate mit vielen Schreibvorgängen zu - Ereignisbeschaffung

So ordnen Sie Aggregate mit vielen Schreibvorgängen zu - Ereignisbeschaffung

Zu Evaluierungszwecken versuche ich eineBei der Event-Sourcing-Anwendung handelt es sich um eine "Personal Finance-Software". Der erste Versuch besteht darin, einen aggregierten Stamm (Account) zu erstellen, dem Sie Entitäten (Transaktionen) hinzufügen können.

Das Konto erhält während des Software-Lebenszyklus eine Menge Transaktionen, so dass jedes Mal, wenn ich eine Transaktion hinzufügen muss, ein Aggregat immer größer werden muss.

Meine Angst ist also entweder:

  1. Event-Sourcing ist in diesem Fall keine gute Wahl
  2. Entitäten sollten unterschiedlich gemappt werden.

Antworten:

0 für die Antwort № 1

Dies ist eindeutig Option 2).

Ich sehe keine Notwendigkeit, warum Sie jede Transaktion zu einem Konto hinzufügen müssen - wo ist der Konsistenzvorteil hier?

Eigentlich im zugrunde liegenden GeschäftsbereichAus genau diesem Grund haben sie (die Finanzleute) überhaupt Transaktionen eingeführt - eine Transaktion ist ein konsistentes Konzept einer atomaren Finanztransaktion, und die Kontenstände werden normalerweise einige Stunden oder Tage nach der Transaktion aktualisiert (vgl ., Wertdatum vs. Transaktionsdatum).

Die Finanzdomäne ist ein perfektes Beispiel dafürSomelink wie "Event Sourcing" und eventuelle Konsistenz sind auch im realen Bereich häufig und eignen sich gut für einen lang laufenden Prozess (Saga) mit eventueller Konsistenz der Aggregate.