AWS Step Functions
開発者ガイド

制限

AWS Step Functions では特定のステートマシンのパラメータサイズに上限が設定されます。たとえば、特定の期間中に実行する API アクションの数や、定義できるステートマシンの数などです。これらの制限は、正しく設定されていないステートマシンによりシステムのすべてのリソースが消費されないようにするために設計されていますが、ハードリミットではありません。

注記

ステートマシン実行の特定のステージまたはアクティビティの実行に長い時間がかかる場合は、タイムアウトイベントを発生させるようにステートマシンのタイムアウトを設定できます。

一般的な制限事項

制限 説明

ステートマシンの名前

ステートマシン名の長さは 1~80 文字で、アカウントとリージョンに対して一意である必要があります。また、次の文字を含めることはできません。

  • 空白

  • ワイルドカード文字 (? *)

  • 括弧 (< > { } [ ])

  • 特殊文字 (: ; , \ | ^ ~ $ # % & ` ")

  • 制御文字 (\\u0000 - \\u001f or \\u007f - \\u009f)

Step Functions では、ASCII 以外の文字を含むステートマシン、実行、およびアクティビティの名前を作成することができます。これらの ASCII 以外の文字は Amazon CloudWatch では使用できません。CloudWatch メトリクスを追跡できるようにするには、ASCII 文字のみを使用する名前を選択します。

アカウントに関連する制限

制限 説明

登録済みアクティビティの最大数

10,000

登録済みステートマシンの最大数 10,000

API アクションの最大数

頻繁でないスパイクを超えてアプリケーションが非常に短期間に大量の API アクションを実行した場合、アプリケーションはスロットリングされることがあります。

最大リクエストサイズ

リクエストあたり 1 MB。これは、リクエストヘッダーおよびその他すべての関連リクエストデータを含めて、Step Functions API リクエストあたりの合計データサイズです。

ステートマシンの実行に関連する制限

制限 説明

オープンな実行の最大数

100 万回

最大実行時間

1 年. 実行が 1 年の制限を超える場合、States.Timeout エラーで失敗し、ExecutionsTimedout CloudWatch メトリクスを出力します。

実行履歴の最大サイズ

25,000 イベント

最大実行アイドル時間

1 年 (実行時間の上限によって制限されます)

実行履歴の最大保持期間

90 日間. この期間後は、実行履歴の取得や表示はできません。Step Functions が保持するクローズした実行の数にはこれ以上の制限はありません。

Step Functions コンソールに表示される最大実行数

Step Functions コンソールには、ステートマシンあたり最大 1,000 件の実行が表示されます。実行数が 1,000 を超える場合は、Step FunctionsAPI アクション、または AWS CLI を使用して、すべての実行を表示します。

タスクの実行に関連する制限

制限 説明

最大タスク実行時間

1 年 (実行時間の上限によって制限されます)

Step Functions がキューにタスクを保持する最大時間

1 年 (実行時間の上限によって制限されます)

ARN あたりの最大アクティビティポーラー

Amazon リソースネーム あたりに GetActivityTask を呼び出すポーラー数: 1,000この制限を超えると次のエラーが表示されます。「アクティビティタスクで同時にポーリングするワーカーの最大数に達しました」

タスク、状態、実行の最大の入力または結果データサイズ

32,768 文字. この制限により、タスクのスケジュール、状態の入力、または実行の開始時に、タスク (アクティビティまたは Lambda 関数)、状態、または実行結果データに影響があります。

API アクションのスロットリングに関連する制限

一部の Step FunctionsAPI アクションは、サービスの帯域幅を維持するため、トークンのバケットスキームを使用してスロットリングされます。

注記

スロットリング制限は 1 アカウント、1 リージョンあたりです。AWS Step Functions によって、任意の時点でバケットサイズと補充レートの両方が上昇する可能性があります。コストを抑制するために、これらのスロットリングレートに依存しないでください。

API 名 バケットサイズ 補充レート/秒
CreateActivity 100 1
CreateStateMachine 100 1
DeleteActivity 100 1
DeleteStateMachine 100 1
DescribeActivity 200 1
DescribeExecution 200 2
DescribeStateMachine 200 1
DescribeStateMachineForExecution 100 1
GetActivityTask 1,000 25
GetExecutionHistory 250 5
ListActivities 100 1
ListExecutions 100 2
ListStateMachines 100 1
SendTaskFailure 1,000 25
SendTaskHeartbeat 1,000 25
SendTaskSuccess 1,000 25
StartExecution 米国東部(バージニア北部)、米国西部 (オレゴン)、欧州 (アイルランド) 1,000 200
StartExecutionその他すべてのリージョン 500 25
StopExecution 米国東部(バージニア北部)、米国西部 (オレゴン)、欧州 (アイルランド) 1,000 200
StopExecutionその他すべてのリージョン 500 25
UpdateStateMachine 200 1

状態のスロットリングに関連する制限

Step Functions 状態の移行は、サービスの帯域幅を維持するため、トークンのバケットスキームを使用してスロットリングされます。

注記

StateTransition サービスメトリクスのスロットリングは、CloudWatch で ExecutionThrottled として報告されます。詳細については、「ExecutionThrottled CloudWatch メトリクス」を参照してください。

サービスメトリクス バケットサイズ 補充レート/秒

StateTransition 米国東部(バージニア北部)、米国西部 (オレゴン)、欧州 (アイルランド)

5000

1,000

StateTransitionその他すべてのリージョン

800

400

制限の引き上げのリクエスト

AWS マネジメントコンソールの [サポートセンター] ページを使用して、リージョンごとに AWS Step Functions から提供されるリソースの制限の引き上げをリクエストします。詳細については、AWS General Reference の「制限の拡大をリクエストするには」を参照してください。