日次ETLを1本の Step Functions から2本に分割したら、後続の起動条件が「先行ワークフローの完了」かつ「上流バッチの完了」という AND になりました。EventBridge には複数のイベントを合流させる機能がありません。SQS でも、AND の成立を判定する部分は自分で作ることになります。
このセッションでは「合流をどこに置くか」を、起動条件の入れ替え / 実行内でのポーリング / Parallel / タスクトークン / 外部状態ストアの5案で、それぞれがどう壊れるかとあわせて比較しました。あわせて、後続の起動を先行ワークフローの末尾に書いたときに、処理が全て成功していてもワークフロー全体が失敗扱いになる、という状態表現の壊れ方も扱っています。
ServerlessDays Tokyo 2025 で話した「アーキテクチャは育てるもの」「適応度関数で測る」の続きです。本番のワークフローに手を入れる段になって、測っていたのは処理の成否だけで、出力の鮮度ではなかったと気づいた話でもあります。
- ServerlessDays Tokyo 2026 / 2026.09.19 / Track C
- 登壇者: 志水友輔 (@shimi023)
- イベントページ: https://tokyo.serverlessdays.io/
- 前回(ServerlessDays Tokyo 2025): https://speakerdeck.com/yusukeshimizu/wan-bi-womu-zhi-sanai-sabaresujin-hua-lun-cdkdeyu-terubian-hua-niqiang-iakitekutiya