CQRS を使用したプロジェクトの実装に着手しており、J Oliver EventStore V2.0 をイベントの永続化エンジンとして使用する予定です。
1) ドキュメントでは、ExampleUsage.cs は "BuildSerializer" で 3 つのシリアライザーを使用しています。これは、逆シリアル化プロセスの柔軟性を示すためのものだと思いますか?
2) 一部のイベントがディスパッチされなかった「失敗後の再起動」の場合、GetUndispatchedCommits() を呼び出してディスパッチするスタートアップ コードが必要だと思いますが、正しいですか?
3) 繰り返しますが、「ExampleUseage.cs」では、「TakeSnapshot」が 3 番目のイベントをイベントストアに追加し、次に「LoadFromSnapShotForward」が最新のスナップショットを取得するだけでなく、ポスト スナップショットのイベントを取得して再構築をシミュレートすると便利です。集合体。
4) 古いスナップショットを保持する用途が見当たりません。それらが役立つユースケースを教えてください。
5) コマンドの受信とイベントの生成を処理するサービスがある場合、特定の集計の最後のスナップショット以降のイベント数を追跡するための推奨戦略は何ですか。「GetStreamsToSnapshot」をあまり頻繁に呼び出したくないのは確かです。
6) SqlPersistence.SqlDialects 名前空間では、SQL ステートメント名は「GetStreamsRequiringSnapShots」ではなく「GetStreamsRequiringSnaphots」です。