Amazon SWF 中的工作流程執行關閉 - Amazon Simple Workflow Service

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

Amazon SWF 中的工作流程執行關閉

啟動工作流程執行後,就會開啟。開啟的工作流程執行可以完成、取消、失敗或逾時等名目關閉。也可以做為新的執行繼續,也可以終止。工作流程執行可由決策者、管理工作流程的人員或 Amazon SWF 關閉。

如果決策者決定工作流程活動已完成,它應該會使用 RespondDecisionTaskCompleted 動作並傳遞 CompleteWorkflowExecution 決策,以完成的名目關閉工作流程執行。

或者,決策者可能以取消或失敗的名目關閉工作流程執行。為取消執行,決策者應該使用 RespondDecisionTaskCompleted 動作並傳遞 CancelWorkflowExecution 決策。

如果它進入一般完成範圍外的狀態,決策者應該無法繼續工作流程執行。為使執行成為失敗狀態,決策者應該使用 RespondDecisionTaskCompleted 動作並傳遞 FailWorkflowExecution 決策。

Amazon SWF 會監控工作流程執行,以確保工作流程執行不會超過任何使用者指定的逾時設定。如果工作流程執行逾時,Amazon SWF 會自動將其關閉。如需逾時值的詳細資訊,請參閱「Amazon SWF 逾時類型 」一節。

決策者也可能關閉執行,使用 RespondDecisionTaskCompleted 動作並傳遞 ContinueAsNewWorkflowExecution 決策,以邏輯方式將它當做新的執行繼續。這對歷史記錄會隨著時間成長變大之長期執行的工作流程執行,是很有用的策略。

最後,您可以直接從 Amazon SWF 主控台或以程式設計方式使用 TerminateWorkflowExecution API 終止工作流程執行。終止會強制關閉工作流程執行。取消優於終止,因為您的決策者可管理工作流程執行的關閉。

如果執行超過特定服務定義的限制,Amazon SWF 會終止工作流程執行。如果父工作流程已終止,且適用的子政策指出也應終止子工作流程,則 Amazon SWF 會終止子工作流程。