如果很多用戶,同一時刻下載nginx服務器上面的資源,這樣會對nginx服務器的I/O產生極大負擔,所以很有必要對nginx服務器的下載做限速設置。
首先在http段配置一個limit_zone,然后在需要的地方使用 limit_conn和limit_rate 進行限速設置,如下示例:
http { limit_zone one $binary_remote_addr 10m; server { location /files/ { limit_conn one 1; limit_rate_after 1000k; limit_rate 100k; } }}limit_zone 針對每個ip定義一個存儲session狀態的容器,這個示例中定義了一個名叫one的10m大小的容器,這個名字會在后面的limit_conn中使用。limit_conn one 1,限制在one中記錄狀態的每個IP只能發起一個并發連接
limit_rate_after 1000k,在下載1000k后開始限速,
limit_rate 100k,對每個連接限速100k,這里是對連接限速,而不是對IP限速,如果一個ip允許三個并發連接,那么這個IP就是限速為limit_rate*3.
新聞熱點
疑難解答