分散式對應狀態的容許失敗臨界值 - AWS Step Functions

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

分散式對應狀態的容許失敗臨界值

當您協調大規模的 parallel 工作負載時,您也可以定義容忍的故障閾值。此值可讓您指定失敗項目的最大數目或百分比做為 Map Run 的失敗臨界值。根據您指定的值,如果 Map Run 超過臨界值,則會自動失敗。如果您同時指定這兩個值,則工作流程會在超過任一值時失敗。

指定臨界值可協助您在整個 Map Run 失敗之前失敗特定數目的項目。當「對映執行」因為超過指定的臨界值而失敗時,「Step Functions」會傳回States.ExceedToleratedFailureThreshold錯誤。

注意

即使在超過容許的失敗閾值之後,但在 Map Run 失敗之前,Step Functions 仍可繼續在 Map Run 中執行子工作流程。

若要在 Workflow Studio 中指定臨界值,請在 [執行時期設定] 欄位下的 [其他組態] 中選取 [設定容許失敗臨界值]。

容忍失敗百分比

定義要容忍的失敗項目百分比。如果超過此值,則「地圖執行」會失敗。Step Functions 會計算失敗項目的百分比,因為失敗或逾時項目總數除以項目總數的結果。您必須指定一個介於零和 100 之間的值。預設百分比值為零,也就是說,如果工作流程的任何一個子工作流程執行失敗或逾時,工作流程就會失敗。如果將百分比指定為 100,即使所有子工作流程執行都失敗,工作流程也不會失敗。

或者,您可以將百分比指定為「分散式對映」狀態輸入中現有鍵值對的參考路徑。此路徑必須在執行階段解析為介於 0 到 100 之間的正整數。您可以在ToleratedFailurePercentagePath子欄位中指定參照路徑。

例如,假設有下列輸入:

{ "percentage": 15 }

您可以使用該輸入的參考路徑來指定百分比,如下所示:

{ ... "Map": { "Type": "Map", ... "ToleratedFailurePercentagePath": "$.percentage" ... } }
重要

您可以在分散式地圖狀態定義中指定ToleratedFailurePercentageToleratedFailurePercentagePath,但不能同時指定兩者。

容忍失敗計數

定義要容忍的失敗項目數。如果超過此值,則「地圖執行」會失敗。

或者,您可以將 count 指定為分散式對映狀態輸入中現有鍵值對的參考路徑。此路徑必須在執行階段解析為正整數。您可以在ToleratedFailureCountPath子欄位中指定參照路徑。

例如,假設有下列輸入:

{ "count": 10 }

您可以使用該輸入的參考路徑來指定數字,如下所示:

{ ... "Map": { "Type": "Map", ... "ToleratedFailureCountPath": "$.count" ... } }
重要

您可以在分散式地圖狀態定義中指定ToleratedFailureCountToleratedFailureCountPath,但不能同時指定兩者。