AWS 応用コース / 第7章 Step Functions入門

Step Functionsのステートマシン基礎

長い処理を状態遷移として扱い、分岐・並列・リトライ・エラー処理をコード外へ出す。

TL;DR — この章で学ぶこと

  1. Stateで処理の順序を宣言する
  2. Choice・Parallel・Mapを選ぶ
  3. RetryとCatchの向きを理解する

01Stateで処理の順序を宣言する

何がこの仕組みの入口になるか? — Stateで処理の順序を宣言するを、構成図の矢印から読み解く。

Stateで処理の順序を宣言するの図解
図の読み方: 左から入力、中央が判断・制御、右が到達先。矢印は処理または検証が進む向きを示す。

何を学ぶか

実務では 何がこの仕組みの入口になるか? を先に確認する。設定値だけでなく、入力と出力の境界を明確にする。

02Choice・Parallel・Mapを選ぶ

どのサービスが責任を持つか? — Choice・Parallel・Mapを選ぶを、構成図の矢印から読み解く。

Choice・Parallel・Mapを選ぶの図解
図の読み方: 左から入力、中央が判断・制御、右が到達先。矢印は処理または検証が進む向きを示す。

何を学ぶか

実務では どのサービスが責任を持つか? を先に確認する。設定値だけでなく、入力と出力の境界を明確にする。

03RetryとCatchの向きを理解する

失敗時にはどこへ戻る/進むか? — RetryとCatchの向きを理解するを、構成図の矢印から読み解く。

RetryとCatchの向きを理解するの図解
図の読み方: 左から入力、中央が判断・制御、右が到達先。矢印は処理または検証が進む向きを示す。

何を学ぶか

実務では 失敗時にはどこへ戻る/進むか? を先に確認する。設定値だけでなく、入力と出力の境界を明確にする。

結論

  1. TaskはLambdaやECSを呼び、Choiceは条件で次のStateを選ぶ。入力・出力をState間で明示的に受け渡す。
  2. Parallelは独立した枝を同時に実行し、Mapは配列要素を反復する。どちらも同時実行数と失敗時の結果を設計する。
  3. 失敗したTaskはまずRetryの条件に一致すれば同じTaskへ戻る。回数を尽くすか一致しなければCatchでエラー処理Stateへ進む。