簡體   English   中英

AWS步驟功能並行

[英]AWS step function Parallel

我正在嘗試AWS步驟功能。 我正在努力創造什么。

  1. 從dynamoDB獲取端點列表( https://user:password@server1.com, https://user2:password@server2.com, etc.. @server1.com https://user:password@server1.com, https://user2:password@server2.com, etc..
  2. 從每個域,我得到一個id列表。 /all
  3. 對於結果中的每個id,我想做一系列REST等https://user:password@server1.com/device/{id} (當時每個域並行只有一個請求)
  4. 將結果保存在dynamoDB中,並檢查它是否是重復結果。

我知道如何進行休息調用並保存到dynamoDB等。但問題或無法找到答案的是。 如何從dynamoDB獲取的數組中的每個域並行啟動/ all?

AWS Step Functions具有不可變狀態。 一旦創建,它們就無法更改。 鑒於這一事實,您在Parallel狀態下不能擁有動態數量的分支。

要解決這個問題,您可能希望以不同的方式處理您的設計。 不要用單個步驟函數解決這個問題,而是考慮將它分成兩個不同的狀態機,如下所示。

步驟功能#1:檢索端點列表

  1. 開始
  2. 任務 :從DynamoDB中檢索端點列表
  3. 任務對於每個端點,調用步驟函數#2並傳入端點
  4. 結束

您可以選擇組合狀態#2和#3來簡化狀態機和任務代碼。

步驟功能#2:執行REST API調用

  1. 開始 - 將單個端點作為輸入狀態
  2. 任務 :對端點執行一系列REST調用
  3. 任務 :存儲通過任務狀態導致DynamoDB
  4. 結束

暫無
暫無

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

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