2014-10-03 58 views
0

我在NGinX中遇到了限制速度的異常行爲。我的任務是每秒支持10個請求,而不是使用突發選項。我正在使用nodelay選項來拒絕超過我的設置速率的任何請求。NGinX限制不爆發

我的配置是: .. http { .. limit_req_zone $binary_remote_addr zone=one:10m rate=10r/s; .. server { .. location/ { limit_req zone=one nodelay; limit_req_status 503; .. } } }

我看到的行爲是如果從先前請求的Nginx將返回503錯誤接收到響應之前發送的請求。我在一秒鐘內只需要2次請求即可看到此行爲。

有沒有從我的配置導致這種行爲缺少的東西? 突發選項是否需要一次處理多個請求?

回答

0

Burst像隊列一樣工作。沒有延遲意味着請求將不會延遲下一秒。如果你沒有指定隊列,那麼你不允許任何其他同時請求來自該IP。該區域對每個IP生效,因爲您的密鑰爲$ binary_remote_addr。

你需要一個爆發。