共用方式為


限制並行

適用於:所有 APIM 層

limit-concurrency 原則可防止封入的原則在任一時候執行超過指定之要求數目。 當超出該數目時,新的要求會立即失敗,並產生「429 太多要求」狀態碼。

警告

由於節流架構的分散本質,速率限制永遠不會完全精確。 已設定的允許要求數目,與實際允許的要求數目之間的差異,取決於要求的數量和速率、後端延遲和其他因素。

注意

請依照原則陳述式中提供的順序,來設定原則的元素和子元素。 深入了解如何設定或編輯 APIM 原則

原則陳述式

<limit-concurrency key="expression" max-count="number">
        <!— nested policy statements -->
</limit-concurrency>

屬性

屬性 描述 是必要欄位 預設
索引鍵 字串。 指定並行範圍。 可由多個原則共用。 允許使用原則運算式。 Yes N/A
max-count 整數。 指定允許輸入原則的要求數目上限。 不允許使用原則運算式。 Yes N/A

使用方式

使用注意事項

  • 在區域中部署多個容量單位時,API 管理 強制執行的要求數目上限會較低。

範例

下列範例示範如何根據內容變數的值,限制轉送至後端的要求數目。

<policies>
  <inbound>…</inbound>
  <backend>
    <limit-concurrency key="@((string)context.Variables["connectionId"])" max-count="3">
      <forward-request timeout="120"/>
    </limit-concurrency>
  </backend>
  <outbound>…</outbound>
</policies>

如需使用原則的詳細資訊,請參閱: