長時間稼働するワークフロー
外部サービスの呼び出しがめちゃくちゃ時間がかかるケースを考える
e.g. 検証を機械ではなく人が行い、作業に 1 日かかる
サービスが終了したことを知らせるメッセージを待つ
メッセージを受け取ったら、ストレージから状態を再読込し、次のステップに進む https://scrapbox.io/files/66a32ad463b651001d8968bd.png
各ステップの状態を保持する必要があるため、通常の非同期呼び出しよりも時間がかかる
この場合、1 つの ワークフロー ではなく、一連の小さなワークフローと考えることができる 小さなワークフロー
入力として、事前にストレージからデータをロードする 元の状態から新しい状態に遷移させ、その状態の 1 つとして永続化する
https://scrapbox.io/files/66a32d7ab3407e001d1dbe31.png
イベントや状態数が増えて状態遷移が複雑になった場合、プロセスマネージャ を作成する必要があるかもしれない