標準與快速工作流程 - AWS Step Functions

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

標準與快速工作流程

建立狀態機時,您可以選取「標準」或「快速」的「類型」。狀態機器的預設「類型」為「標準」。「類型」為「標準」的狀態機稱為「標準」工作流程,而「類型」為「快速」的狀態機稱為 Express 工作流程

對於標準工作流程和 Express 工作流程,您可以使用定義狀態機器Amazon States Language。根據您選取的類型,狀態機器執行的行為會有所不同。

重要

建立狀態機後,您選擇的「型」無法變更。

注意

如果您在 Step Functions 的控制台之外定義狀態機器,例如在您選擇的編輯器中,則必須使用擴展名為. asl.json 來保存狀態機定義。

標準工作流程非常適合長時間執行 (長達一年)、耐用且可稽核的工作流程。您可以使用 Step Functions API 擷取完整的執行歷史記錄,最多可在執行完成後 90 天。標準工作流程只遵循一次的模型,除非您在 ASL 中指定了行為,否則您的任務和狀態永遠不會執Retry行一次以上。這使得標準工作流程適合協調非冪等動作,例如啟動 Amazon EMR 叢集或處理付款。標準工作流程執行會根據處理的狀態轉換數量計費。

快速工作流程適合大量事件處理工作負載,例如 IoT 資料擷取、串流資料處理和轉換,以及行動應用程式後端。這種工作流程最多可以執行五分鐘。Express 工作流程採用at-least-once模型,其中執行可能會執行多次。這使得 Express 工作流程非常適合協調冪等動作,例如在 Amazon DynamoDB 中透過 PUT 動作轉換輸入資料和存放。Express Workflow 執行會依執行次數、執行持續時間,以及執行執行時耗用的記憶體計費。

標準和快速工作流程可以自動啟動,以回應事件,例如來自 Amazon API Gateway 的 HTTP 請求 (大規模完全受管 API)、IoT 規則以及 Amazon EventBridge 中 140 多個其他事件來源。

提示

若要將快速工作流程的範例部署到您的AWS 帳戶,請參閱模組 7-API Gateway、平行狀態、AWS Step Functions工作坊的快速工作流程

如需「標準」和「快速工作流程」執行之主控台體驗的相關資訊,請參閱主控台中的標準和快速工作流程執行

標準與快速工作流程
標準工作流程 快速工作流程:同步和非同步
持續時間上限 一年 五分鐘
支援的執行啟動速率

如需與支援的執行開始率相關配額的詳細資訊,請參閱與 API 動作節流相關的配額

如需與支援的執行開始率相關配額的詳細資訊,請參閱與 API 動作節流相關的配額

支援的狀態轉換速率

如需與支援的狀態轉換率相關配額的資訊,請參閱與狀態節流有關的配額

沒有限制
定價 按狀態轉換的數量定價。每次執行中的步驟完成時,就會計算狀態轉換 依您執行的執行次數、其持續時間和記憶體用量來計費。
執行歷史記錄

可以使用 Step Functions API 列出和描述執行。可以通過控制台直觀地調試執行。您也可以在狀態機器上啟用記錄,在記錄 CloudWatch 檔中檢查這些資料。

如需有關在主控台中偵錯標準工作流程執行的詳細資訊,請參閱主控台中的標準和快速工作流程執行檢視和偵錯執行

無限制的執行歷史記錄,也就是說,您可以在 5 分鐘內產生的多個執行歷史記錄項目。

透過在狀態機器上啟用記錄,可以在記錄 CloudWatch 檔或 Step Functions 主控台中檢查執行。

如需有關在主控台中偵錯 Express 工作流程執行的詳細資訊,請參閱主控台中的標準和快速工作流程執行檢視和偵錯執行

執行語義 只有一次工作流程執行。

非同步快速工作流程:t-least-once工流程執行。

同步快速工作流程:t-most-once工流程執行。

服務整合 支援所有服務整合與模式。 支援所有服務整合。
注意

Express 工作流程不支援工作執行 (.sync) 或回呼 (.waitForTaskToken) 服務整合模式。

Step Functions 活動 支援 Step Functions 活動。 不支援 Step Functions 活動。