簡體   English   中英

如何防止AWS Step Functions中狀態機的並發運行?

[英]How to prevent concurent runs of a state machine in AWS Step Functions?

有沒有辦法防止並發執行AWS Step Functions狀態機? 例如,我運行狀態機,如果此執行未完成,然后再次運行此機,則會出現異常。

根據StartExecution API文檔,我認為這是不可能的:

StartExecution是冪等的。 如果使用與運行執行相同的名稱和輸入來調用StartExecution,則該調用將成功並返回與原始請求相同的響應。 如果執行關閉或輸入不同,它將返回400 ExecutionAlreadyExists錯誤。 名稱可以在90天后重用。

您可以添加一個步驟(例如,使用Lambda函數),該步驟將檢查是否已經在執行同一狀態機(以及處於哪種狀態)。 如果是這種情況,則lambda和步驟將失敗。

根據您要實現的目標,您還可以配置Retry以便在舊狀態機完成后繼續執行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM