何らかのイベントによって作成されたサガをして、数時間待ってから、何も起こらなければ何らかのコマンドを送ります。イベントソーシングを使用した時間ベースのサガ
ここで、この佐賀がすべてメモリに入っていて、アプリ/サーバーを再起動しなければならないと、佐賀はアンロードされて再び見られませんでした。
システムがオンラインに戻ると、このSagaを高速化するためにEvent Sourcingを使用しますか?
もしそうなら、システムの起動時に再生することができる「アクティブなサガ」を備えた別個のイベントストアが必要になり、サガをスピードアップすることができます。これまでのところ私にとっては良いようですが、どのようにタイムアウトを実装するのですか?
私はリプレイ時にタイムアウトを "偽造"する方法が必要です。サガに入るイベントに応じて、いくつかの後続のタイムアウトがあるかもしれません。
私は7日間生きる佐賀をどうすればいいですか?私はそれがサービスの再起動の場合には永続化されなければならないと確信しています。 –
@MauroDestro Event Sourcingを使用しているときにあなたのサガを記憶しておく必要はありません。あなたがイベントを処理する前に再生できるエンティティとして、サガを考えてみましょう。コマンドを処理する前に集計を再生する方法と比較してください。時間切れを処理するためのJonathanのアプローチを使用することで、「時間」を再生することも可能になります。 –