查看 Application Integration 支援的連接器。
For Each 並行工作
For Each 並行工作可讓您從主要整合作業執行其他整合作業 (子整合作業)。如工作名稱所示,子整合作業會並行執行。
這個工作會使用 API 觸發 ID 做為句柄,用於識別要執行的整合。舉例來說,如果您將 API 觸發 ID 指定為 api_trigger/APITriggerX
,工作就會執行所有具有 api_trigger/APITriggerX
觸發 ID 的子整合項目。
執行子整合後,您也可以在主要整合中讀取子整合的回應。使用這個工作,以主要整合項目的依附元件執行子整合項目。
事前準備
- 請確認您已將使用者代管的服務帳戶連結至整合項目。如果整合作業未設定使用者自管服務帳戶,系統會預設使用預設服務帳戶 (
service-PROJECT_NUMBER@gcp-sa-integrations.iam.gserviceaccount.com
) 進行驗證。 - 請確認服務帳戶具備 Application Integration 叫用者 IAM 角色。如要瞭解如何將角色授予服務帳戶,請參閱「管理服務帳戶的存取權」。
設定 For Each 並行工作
如要設定 For Each Parallel 工作,請按照下列步驟操作:
- 前往 Google Cloud 控制台的「Application Integration」頁面。
- 在導覽選單中,按一下「整合」。
系統隨即會顯示「Integrations」頁面,列出 Google Cloud 專案中可用的所有整合功能。
- 選取現有的整合,或按一下「建立整合」來建立新的整合。
如果您要建立新的整合功能:
- 在「Create Integration」窗格中輸入名稱和說明。
- 選取整合作業的區域。
- 選取要用於整合的服務帳戶。您隨時可以透過整合工具列的 「整合摘要」窗格,變更或更新整合作業的服務帳戶詳細資料。
- 按一下「建立」,新建立的整合服務會在整合服務編輯器中開啟。
- 在整合編輯器的導覽列中,按一下「Tasks」,即可查看可用任務和連接器清單。
- 在整合服務編輯器中,按一下並放置「For Each Parallel」任務元素。
- 按一下設計工具中的「For Each Parallel」工作元素,開啟「For Each Parallel」工作設定窗格。
- 使用任務的設定屬性設定顯示欄位,詳情請參閱下表。
系統會自動儲存所有屬性變更。
設定屬性
本節將說明「For Each Parallel」工作項的設定屬性。
輸入屬性
房源名稱 | 參數名稱 | 資料類型 | 說明 |
陣列選取 | List to iterate
|
字串、整數、雙精度浮點數或 JSON 型別的陣列。 | 必須執行子整合的值清單。清單中的每個值都會執行個別的子整合執行緒,且所有執行緒都會並行執行。 您可以設定「Where to map individual array elements」欄位,將迭代值傳遞至子整合項目。 您也可以在「Map to additional sub-integration input(s)」欄位中,將額外值從主要整合項目傳遞至子整合項目。 |
子整合項目詳細資料 | API Trigger ID
|
字串 | 要執行的已發布子整合項目的觸發 ID。 這個值可在子整合項目中的「API 觸發條件」的「觸發 ID」欄位中找到。 |
Execution strategy
|
N/A |
SYNC:以同步模式執行子整合作業。在這個模式中,主整合作業會等待子整合作業完成,再繼續執行下游工作。 ASYNC:以非同步模式執行子整合作業。在這個模式中,主要整合作業不會等待子整合作業完成。在呼叫子整合項目後立即,主要整合項目會執行下游工作。 |
|
Run all integrations with this API Trigger ID |
不適用 | 執行具有相同 API 觸發 ID 的所有整合。
舉例來說,如果整合服務 注意:如果選取這個選項,主整合作業就無法取得子整合作業的回應。如果您想使用子整合項目的回應,請選取「Run a single integration」(執行單一整合) 選項。 |
|
Run a single integration |
不適用 | 只執行「Integration name」欄位中指定的整合作業。您可以設定「Collect values from sub-integration output(s)」部分,使用子整合作業的回應。
|
|
每次執行 | Where to map individual array elements |
字串 | 子整合作業輸入變數的名稱,其中應對應陣列元素。陣列元素可直接對應至子整合作業輸入變數。如果選取單一子整合項目,您可以從下拉式清單中選取子整合項目輸入變數。 |
Map to additional sub-integration input(s) |
字串 | 其他子整合對應選項。
這個欄位會以鍵/值組合的形式接受值,其中鍵是主要整合項目中的變數,而值則是子整合項目中的對應輸入變數。
舉例來說,假設主整合項目含有 |
|
Collect values from sub-integration output(s) |
字串 | 如果執行策略為同步 (SYNC),且選取單一子整合 (執行單一整合),則子整合的輸出內容可收集至目前整合中的陣列變數。
| |
執行設定 | Integrations to execute at a time (parallel)
|
整數 | 子整合作業允許的平行執行數量上限。預設值為 50 (最大值為 10000 )。同一個同類群組中的所有子整合作業都會在下一個同類群組的子整合作業執行前,完成執行。 |
Ignore failures
|
布林值 |
您可以指定下列任一值:
|
最佳做法
使用「For Each Parallel」工作時,建議您採取下列最佳做法:
- 根據子整合項目的配額限制設定同類群組大小。
- 如要收集子整合項目的輸出內容以供日後使用,請採用 SYNC 執行策略。
- 如果子整合作業的執行時間可能超過 2 分鐘,請使用 ASYNC 執行策略。
如要瞭解適用於 For Each 並行工作的工作用量限制,請參閱「 用量限制」一節。
注意事項
一般來說,如果子整合作業的執行時間超過 2 分鐘,或是您打算將這項工作與核准工作等非同步工作搭配使用,請勿使用 SYNC 執行策略。
錯誤處理策略
工作錯誤處理策略會指定在工作因暫時性錯誤而失敗時,應採取的動作。如要瞭解如何使用錯誤處理策略,以及不同類型的錯誤處理策略,請參閱「錯誤處理策略」。
配額與限制
如要進一步瞭解配額和限制,請參閱「配額與限制」。