在雲端基礎結構的Adobe Commerce中設定Fastly速率限制
Fastly在雲端基礎結構上的Adobe Commerce中的速率限制設定會延遲要求,並在超過臨界值時傳回HTTP 429 (超過限制)錯誤。 若要修正此問題,請更新Fastly的VCL程式碼片段中的Tarpit間隔。
說明 description
環境
雲端基礎結構上的Adobe Commerce v2.4.4 - 2.4.8-p2
問題/症狀
- 當超過要求臨界值時,Fastly傳回HTTP 429 (超過限制)錯誤。
- 由於強制的延遲間隔和處罰持續時間,請求速度會變慢。
- 冷卻期間期間未明確定義或可供存取。
- 要擷取或修改延遲間隔、其角色及調整方式,沒有直接的方法。
解決方法 resolution
Fastly會使用滑動視窗演演算法,根據可設定的引數(例如要求臨界值和罰款持續時間)來強制實行速率限制。 若要瞭解並調整這些設定,請遵循下列步驟:
-
Fastly會在滾動時間範圍內(例如3600秒)強制執行速率限制。 當IP超過臨界值時:
- Fastly傳回HTTP 429 (超過限制)回應。
- 封鎖會持續到要求計數在視窗內降至臨界值以下為止。
- Adobe Commerce透過傳送 429 回應給Fastly來啟動速率限制,這會將IP置於
tarpit(暫時性減速區域)中。
-
Adobe Commerce使用
tarpit interval來減慢來自超過速率限制之IP的請求速度。 觸發時,它會引入延遲(預設為5秒),然後才會處理進一步的請求。 您可以透過Fastly的API調整此間隔。 -
若要變更雲端基礎結構上Adobe Commerce中的延遲間隔,請執行下列步驟:
- 取得您的Fastly API Token以進行驗證。
- 使用Fastly API擷取您服務的作用中VCL組態。
- 找到
magentomodule_rate_limiting_deliver程式碼片段。 - 將
tarpit_interval引數更新為您的所需值(例如,從5秒增加)。 - 使用Fastly的API端點上傳修改過的VCL設定。
- 啟動更新版本以套用變更。
其他附註:
- 這些設定特別適用於Adobe Commerce與Fastly的整合。
- 部署到生產環境之前,請務必在中繼環境中測試設定變更。
- 如需有關編輯VCL片段或使用Fastly的API的詳細指引,請參閱Fastly的官方檔案或聯絡支援團隊。
相關閱讀
- 在Adobe Commerce on Cloud基礎結構指南中設定Fastly服務
- Adobe Commerce on Cloud基礎結構指南中的Fastly服務總覽
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f