比較配額和尖峰流量政策

您正在查看 Apigee Edge 說明文件。
前往 Apigee X 說明文件
info

配額和 SpikeArrest 政策:想知道哪一個最能滿足速率限制需求?請參閱下方的比較圖表。

配額 SpikeArrest
其用途如下: 限制應用程式在特定時間內可對 API 代理程式目標後端建立的連線數量。 保護 API Proxy 的目標後端,防範嚴重流量激增和阻斷服務攻擊。
請勿用於:

請勿使用此功能保護 API 代理程式的目標後端,以免流量遽增。

請使用 SpikeArrest 政策。

請勿用於計算及限制應用程式在特定時間內可對 API 代理程式目標後端建立的連線數量。

請使用配額政策。

儲存計數?
附加政策的最佳做法:

將其附加至 ProxyEndpoint Request PreFlow,通常是在驗證使用者後。

這可讓政策在 API Proxy 的進入點檢查配額計數器。

通常會附加至 ProxyEndpoint Request PreFlow,通常位於流程的開頭。

這可在 API Proxy 的進入點提供尖峰防護。

達到上限時的 HTTP 狀態碼:

500 (內部伺服器錯誤) *

500 (內部伺服器錯誤) *

注意事項:
  • 配額計數器會儲存在 Cassandra 中。
  • 設定政策,以非同步方式同步處理計數器,以節省資源。
  • 非同步計數器同步處理可能會導致頻率限制回應延遲,導致呼叫量略微超出您設定的上限。
  • 根據收到上次流量時的時間執行節流。並為每個訊息處理器儲存這段時間。
  • 如果您指定的頻率限制為每秒 100 個呼叫,則訊息處理器只會允許每 1/100 秒 (10 毫秒) 呼叫 1 次。10 毫秒內的第二次呼叫會遭到拒絕。
  • 即使每秒限制的速率很高,幾乎同時提出的要求也可能會遭到拒絕。
瞭解詳情: 配額政策 SpikeArrest 政策

* 對於配額政策SpikeArrest 政策,超出速率限制的預設 HTTP 狀態碼為通用的 500 Internal Server Error。您可以新增機構層級資源 (features.isHTTPStatusTooManyRequestEnabled),將這些政策的狀態碼變更為 429 Too Many Requests。如果您是 Cloud 客戶,請與 Apigee Edge 支援團隊聯絡,啟用這項資源。