CQRS/EventStore:発見されていないイベントをディスパッチする方法は?

StackOverflow https://stackoverflow.com/questions/8850174

  •  27-10-2019
  •  | 
  •  

質問

驚くべきライブラリイベントストア3.0には、aがあります

store.Advanced.GetUnDispatchedCommits();

これらを派遣するための最良の方法/パターンは何ですか?

私は単にループしてディスパッチャーに電話してから、それがディスパッチされていることを示すコミットを更新しますか(もしそうなら、私はこれをどのように行うでしょうか)?

また、イベントストアの配線中に、起動時にディスパッチされていないコミットで発送が試みられます。どうすればこれが行われるのを避けることができますか?

これらの質問は、プロジェクトの問題ではなく、イベントストアがどのように機能するかを学ぶことに関係しています。

役に立ちましたか?

解決

「ディスパッチスケジューラ」は、スタートアップ中にすべての非表示になっていないコミットをロードしようとするものです。独自に作成し、スタートアップで呼び出されるメソッドをオーバーライドできます。同時に、私はそれをお勧めしません。イベントストアの背後にあるモデルは、すべての断層のトレランスと障害の回復に関するものです。具体的には、コミットが継続された直後にマシンが死んでおり、ディスパッチャーがまだメッセージのプッシュを完了していない場合、イベントストアは、発見されていないコミットを発送することにより、スタートアップで中断したところから中断した場所にピックアップしたいと思います。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top