關閉 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 主控台終止工作流程執行,或使用TerminateWorkflowExecutionAPI。終止會強制關閉工作流程執行。取消優於終止,因為您的決策者可管理工作流程執行的關閉。

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