了解平台限制並避免節流

要設計可擴展的流程,了解 Power Automate 與 Power Platform 授權與 API 對流程所施加的限制會很有幫助。 違反這些限制的流量可以被限速、減速,甚至關閉。 如果流量連續被限速 14 天,它們會自動關閉。 你隨時都可以重新開啟流程。 如果他們繼續違反限制,就會再次被關閉。 本文說明影響你流量的限制,以及如何維持在這些限制內。 更多資訊請參閱 自動化、排程與即時流程的限制 ,以及 請求限制與分配。

查看您的授權方案

某些平台和 API 限制取決於您的授權計劃。 在 Power Automate 中,最簡單的辨識授權與功能方式是選擇設定>「檢視我的授權」。

Power Automate 設定中「檢視我的授權」選項的截圖。

若想深入了解您的授權計畫細節,請在 Power Automate 入口中按 Ctrl+Alt+A。

API 請求限制

API 請求是 Power Automate 流程請求服務執行某件事的方式,例如連接應用程式或傳送或回傳資料。 每當你的流程執行某個動作時,無論成功或失敗,都會算作一次請求。 了解更多請參閱「什麼是 Microsoft Power Platform 請求?」。

雲端流程一天可執行的動作數量限制,取決於你的授權計畫。 平台層級的 API 限制基於使用者授權。 了解更多關於 Power Automate 授權的類型。

API 請求限制與 連接器限速不同。 它們適用於 24 小時期間內你所有流程中的所有執行。 要查看流程執行的動作數量,請前往流程詳情頁面,選擇 分析,然後選擇 動作 標籤。

即使流程對 Power Platform 發出的要求次數不多,如果流程的執行頻率高於您的預期,仍可能觸及限制。 例如,您可以建立一個雲端流程,讓系統在您的主管每次寄送電子郵件給您時,便傳送推播通知給您。 每次收到任何人寄來的電子郵件時,流程都會執行一次,因為必須檢查該電子郵件是否來自你的主管。

使用下列指導方針估算流程的要求使用量:

  • 含有一個觸發程序和一個動作的簡單流程,每次執行都會產生兩個動作,耗用兩個要求。

  • 流程中的每個觸發器和動作都會產生 Power Platform 請求。 動作包括連接器動作、HTTP 動作,以及內建動作如初始化變數、建立作用域和簡單的組合動作。

  • 成功和失敗的操作都會列入限制計算,但略過的操作不會計入。

  • 每個動作都會產生一個要求。 如果動作處於「套用到每個」迴圈中,它會產生與迴圈要處理的項目數量相同的請求。

  • 一個動作可以有多個表達式,但它算作一個 API 請求。

  • 重試和因分頁而產生的額外請求都視為動作。

當你的流量被限速時該怎麼辦

你可以用兩種方式解決限速問題:

  • 讓流量容量更大。
  • 減少它提出的請求數量。

為流程提供專屬容量

為流程指派一個 流程授權 。 與使用者授權不同,程序授權是分配給流程本身,因此流程的權限不依賴於誰擁有或執行它。 Process 授權允許流程在 24 小時內執行 250,000 次動作(以 Power Platform 請求形式顯示於管理中心報告中)。

流動必須存在於 溶液中。 接著你有兩種方式來分配容量:

  • 直接將授權指派給流程:如果一個流程每 24 小時需要超過 250,000 次操作,則可 堆疊最多 10 個流程授權 ,而不是分散在不同流程中。 每張授權每 24 小時會增加 250,000 次行動。
  • 將授權指派給 流程群組:最多 25 個具解決方案感知的雲端流程,每 24 小時共享該群組的 250,000 個動作。 每個父流程和子流程都必須明確地個別新增,而且無法在流程群組上疊加授權。

如果你在授權分配後儲存流程,流程會立即接收新的權限。 否則,流程會在一週內於背景重新整理其方案。

如果你需要容量才能完成購買,請向全域管理員申請 Microsoft 365 系統管理中心 免費的 30 天 Process 試用。 試用授權和付費授權一樣,所以能立即解決限速問題。 想了解更多,請參閱 管理員管理的試用授權。

Power Platform 請求數附加元件在這種情況下也無濟於事。 這個外掛會提高使用者的每日請求上限,而不是流程的每日請求上限,且也無法指派給流程。

Note

Power Automate Per-flow 計畫是舊有授權,程序授權取代了它。 已經有 Per-flow 授權的流程會保留每 24 小時 250,000 次操作,但你只能分配一個 Per-flow 授權給流程。 限制不能堆疊,也不能指派給流量群組。 使用程序許可證來取得新的能力。

讓流程使用較少的請求數

每個觸發器和動作都算作請求,包括內建的動作,如初始化變數和組合動作。 常見的減量:

  • 新增 觸發條件 ,讓流程只在收到的項目是它真正需要處理的項目時才會運行。 每收到一封電子郵件就啟動並檢查寄件者的流程,每封電子郵件都會耗用要求。
  • 請在資料來源端使用 OData 篩選查詢進行篩選,而不是先擷取所有資料列,再在 套用至每一項 迴圈中逐一測試。 迴圈的每次迭代都會產生自己的請求。
  • 當您需要重塑資料,而不是逐一處理每個項目時,請使用 選取 和 篩選陣列 資料作業,而非使用迴圈。
  • 刪除不需要的重試。 重試和分頁都算作行動。

查看你超出了哪項限制

並非每個受到節流限制的流程都會達到每日動作上限。 適用不同的補救措施:

癥狀 Limit 哪些有幫助
整個流程中的動作延遲,管理中心報表中的每日動作數偏高 每日行動限制 申請流程授權,或減少請求
來自某個連接器的 HTTP 429,錯誤訊息如 已超過速率限制 連接器限制 可以分散通話、批次處理,或使用其他連線
高負載時呼叫 Dataverse 的錯誤 Dataverse 服務保護限制 降低請求速率;程序授權也不會提高這些限制

將環境移轉為隨用隨付,會改變超出每日動作限制的使用量計費方式。 它不會提高連接器的限制或 Dataverse 服務保護的限制,所以並不是解決流量限速的通用解決方案。

如果流動被暫停

若流量連續超過限額14天,將被暫停,並通知其擁有者。 授與流程授權,並重新開啟流程。

想了解更多,請參考 「當我的流程執行太多動作會發生什麼?」一文。

連接器的 API 輸送量限制

除了平台所施加的限制外,每個連接服務都有其獨特的限制。 Power Automate 中的連接器限制是指連接器強制執行速率限制或使用配額以防止濫用並確保公平資源分配的機制。 當連接器被限速時,會限制在特定時間內可進行的請求或操作數量。 每個連接器都有自己的節流限制。

當流程遇到連接器層級限速限制時,服務會回傳錯誤代碼 429(請求過多), 並 顯示「速率上限超過」等錯誤文字。27 秒後再試一次。

Dataverse​API 限制

Dataverse 作為連接器服務,自行定義服務保護限制。 這些限制會以每位使用者為單位進行評估,其中的使用者是指與該動作相關聯的使用者。 通常,使用者是流程擁有者,但如果流程在動作中調用使用者上下文,則使用者也可以是呼叫使用者。 了解更多關於 服務保護 API 限制。

流程並行數限制

同時執行的執行次數、可循環處理的項目數量,以及為更有效率處理而分割大型資料集的區塊數量,都有限制。 了解更多關於 並行、迴圈與解散限制。

動作高載限制

行動爆發限制指的是特定期間內可觸發的最大行動數量,通常以滾動時間窗口計算。 目前上限是五分鐘內完成10萬次行動。

為了維持在這個限制以下,可以利用子流程將負載分散到多個流程,或加入觸發條件。 在「建立子流程與優化 Power Automate 觸發器」中了解更多。

流程設計限制

你可能會遇到流程複雜度的限制,這些限制在設計和定義層級都已定義。 如果遇到這種情況,考慮重新設計你的流程。 請參見 流量定義限制。