亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 網站 > Nginx > 正文

詳解nginx的請求限制(連接限制和請求限制)

2024-08-30 12:29:45
字體:
來源:轉載
供稿:網友

一,背景

    我們經常會遇到這種情況,服務器流量異常,負載過大等等。對于大流量惡意的攻擊訪問,會帶來帶寬的浪費,服務器壓力,影響業務,往往考慮對同一個ip的連接數,并發數進行限制。http_limit_conn_module 模塊來實現。該模塊可以根據定義的鍵來限制每個鍵值的連接數,如同一個IP來源的連接數。并不是所有的連接都會被該模塊計數,只有那些正在被處理的請求(這些請求的頭信息已被完全讀入)所在的連接才會被計數。http_limit_req_module 模塊來實現,該模塊可以通過定義的 鍵值來限制請求處理的頻率。特別的,可以限制來自單個IP地址的請求處理頻率。 限制的方法如同漏斗,每秒固定處理請求數,推遲過多請求。

二,配置語法

1,http_limit_conn_module指令解釋

limit_conn_zone
語法: limit_conn_zone $variable zone=name:size;
默認值: none
配置段: http

該指令描述會話狀態存儲區域。鍵的狀態中保存了當前連接數,鍵的值可以是特定變量的任何非空值(空值將不會被考慮)。$variable定義鍵,zone=name定義區域名稱,后面的limit_conn指令會用到的。size定義各個鍵共享內存空間大小。如:

limit_conn_zone $binary_remote_addr zone=addr:10m;

注釋:客戶端的IP地址作為鍵。注意,這里使用的是$binary_remote_addr變量,而不是$remote_addr變量。

$remote_addr變量的長度為7字節到15字節,而存儲狀態在32位平臺中占用32字節或64字節,在64位平臺中占用64字節。

$binary_remote_addr變量的長度是固定的4字節,存儲狀態在32位平臺中占用32字節或64字節,在64位平臺中占用64字節。

1M共享空間可以保存3.2萬個32位的狀態,1.6萬個64位的狀態。

如果共享內存空間被耗盡,服務器將會對后續所有的請求返回 503 (Service Temporarily Unavailable) 錯誤。

limit_zone 指令和limit_conn_zone指令同等意思,已經被棄用,就不再做說明了。

limit_conn_log_level
語法:limit_conn_log_level info | notice | warn | error
默認值:error

配置段:http, server, location

當達到最大限制連接數后,記錄日志的等級。

limit_conn
語法:limit_conn zone_name number
默認值:none
配置段:http, server, location

指定每個給定鍵值的最大同時連接數,當超過這個數字時被返回503 (Service Temporarily Unavailable)錯誤。如:

limit_conn_zone $binary_remote_addrzone=addr:10m;server{ location /www.baidu.com/{  limit_conn addr 1; }}

同一IP同一時間只允許有一個連接。

當多個 limit_conn 指令被配置時,所有的連接數限制都會生效。比如,下面配置不僅會限制單一IP來源的連接數,同時也會限制單一虛擬服務器的總連接數:

limit_conn_zone $binary_remote_addr zone=perip:10m;limit_conn_zone $server_name zone=perserver:10m;server { limit_conn perip 10; limit_conn perserver 100;}

[warning]limit_conn指令可以從上級繼承下來。[/warning]

limit_conn_status
語法: limit_conn_status code;
默認值: limit_conn_status 503;
配置段: http, server, location

該指定在1.3.15版本引入的。指定當超過限制時,返回的狀態碼。默認是503。

limit_rate
語法:limit_rate rate
默認值:0
配置段:http, server, location, if in location

對每個連接的速率限制。參數rate的單位是字節/秒,設置為0將關閉限速。 按連接限速而不是按IP限制,因此如果某個客戶端同時開啟了兩個連接,那么客戶端的整體速率是這條指令設置值的2倍。

完整實例配置

http{ limit_conn_zone$binary_remote_addrzone=limit:10m; limit_conn_log_level info; server{  location ^~/download/{   limit_conn limit 4;  limit_rate 200k;  /data/www.baidu.com/download/;  } }}

使用注意事項

事務都具有兩面性的。http_limit_conn_module 模塊雖說可以解決當前面臨的并發問題,但是會引入另外一些問題的。如前端如果有做LVS或反代,而我們后端啟用了該模塊功能,那不是非常多503錯誤了?這樣的話,可以在前端啟用該模塊,要么就是設置白名單,白名單設置參見后續的文檔。

2,ngx_http_limit_req_module模塊指令

limit_req_zone
語法: limit_req_zone $variable zone=name:size rate=rate;
默認值: none
配置段: http

設置一塊共享內存限制域用來保存鍵值的狀態參數。 特別是保存了當前超出請求的數量。 鍵的值就是指定的變量(空值不會被計算)。如

limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;

說明:區域名稱為one,大小為10m,平均處理的請求頻率不能超過每秒一次。
鍵值是客戶端IP。

使用$binary_remote_addr變量, 可以將每條狀態記錄的大小減少到64個字節,這樣1M的內存可以保存大約1萬6千個64字節的錄。

如果限制域的存儲空間耗盡了,對于后續所有請求,服務器都會返回 503 (Service Temporarily Unavailable)錯誤。
速度可以設置為每秒處理請求數和每分鐘處理請求數,其值必須是整數,所以如果你需要指定每秒處理少于1個的請求,2秒處理一個請求,可以使用 “30r/m”。

limit_req_log_level
語法: limit_req_log_level info | notice | warn | error;
默認值: limit_req_log_level error;
配置段: http, server, location

設置你所希望的日志級別,當服務器因為頻率過高拒絕或者延遲處理請求時可以記下相應級別的日志。 延遲記錄的日志級別比拒絕的低一個級別;比如, 如果設置“limit_req_log_level notice”, 延遲的日志就是info級別。

limit_req_status
語法: limit_req_status code;
默認值: limit_req_status 503;
配置段: http, server, location

該指令在1.3.15版本引入。設置拒絕請求的響應狀態碼。

limit_req
語法: limit_req zone=name [burst=number] [nodelay];
默認值: —
配置段: http, server, location

設置對應的共享內存限制域和允許被處理的最大請求數閾值。 如果請求的頻率超過了限制域配置的值,請求處理會被延遲,所以所有的請求都是以定義的頻率被處理的。 超過頻率限制的請求會被延遲,直到被延遲的請求數超過了定義的閾值,這時,這個請求會被終止,并返回503 (Service Temporarily Unavailable) 錯誤。這個閾值的默認值為0。如:

limit_req_zone $binary_remote_addr zone=creq:10 mrate=1r/s;server{ location /www.baidu.com/{  limit_req zone=creq burst=5; }}

限制平均每秒不超過一個請求,同時允許超過頻率限制的請求數不多于5個。

如果不希望超過的請求被延遲,可以用nodelay參數,如:

limit_req zone=ttlsa_com burst=5 nodelay;

完整實例配置

http{ limit_req_zone $binary_remote_addr zone=creq:10m rate=1r/s; server{  location ^~/download/{   limit_req zone=creq burst=5;  data/www.baidu.com/download/;  } }}

可能要對某些IP不做限制,需要使用到白名單。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到服務器教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
在线亚洲午夜片av大片| 亚洲综合中文字幕在线| 中日韩美女免费视频网址在线观看| 日韩欧美在线第一页| 亚洲片av在线| 中文字幕日韩av电影| 欧美亚洲一区在线| 精品国产自在精品国产浪潮| 成人免费在线视频网址| 中文字幕在线视频日韩| 亚洲第一页自拍| 亚洲第一网站免费视频| 久久久久久欧美| 91久久精品一区| 欧美精品久久久久a| 久久香蕉精品香蕉| 国产91在线播放精品91| 丝袜情趣国产精品| 国产成+人+综合+亚洲欧美丁香花| 视频在线一区二区| 欧美洲成人男女午夜视频| 97视频免费观看| 国产精品久久久久久av下载红粉| 2019最新中文字幕| 欧美色另类天堂2015| 国产精品爱啪在线线免费观看| 在线播放国产一区中文字幕剧情欧美| 国模gogo一区二区大胆私拍| 精品爽片免费看久久| 日韩亚洲成人av在线| 日韩中文有码在线视频| 色偷偷88888欧美精品久久久| 亚洲欧美日韩国产精品| 精品国产91久久久久久老师| x99av成人免费| 色狠狠av一区二区三区香蕉蜜桃| 69久久夜色精品国产7777| 欧美在线xxx| 日韩免费观看在线观看| 欧美国产视频一区二区| 国产精品白嫩初高中害羞小美女| 久久精品国产69国产精品亚洲| 欧美大片在线看免费观看| 成人黄色av免费在线观看| 国产精品白丝av嫩草影院| 国产精品电影在线观看| 国产精品丝袜一区二区三区| 日韩在线播放视频| 97在线日本国产| 中文字幕av一区中文字幕天堂| 国产精品久久999| 亚洲一区二区久久久久久久| 欧美日韩亚洲视频| 欧美亚洲激情在线| 国产精品主播视频| 欧美丝袜美女中出在线| 国产精品羞羞答答| 欧美一区二区三区免费观看| 国模吧一区二区| 日韩的一区二区| 亚洲精品电影在线| 精品久久久久久亚洲精品| 97视频免费在线看| 成人在线中文字幕| 国产精品久久久亚洲| 91精品综合久久久久久五月天| 精品亚洲夜色av98在线观看| 国产精品欧美日韩| 日韩av免费一区| 日韩精品免费视频| 国产成人精品久久二区二区91| 亚洲欧美国产制服动漫| 精品久久久久久亚洲国产300| 午夜精品福利电影| 国产精品美女在线| 欧洲中文字幕国产精品| 国产玖玖精品视频| 一夜七次郎国产精品亚洲| 91免费综合在线| 国产精自产拍久久久久久蜜| 亚洲国产高清福利视频| 久久男人资源视频| 中文字幕国产亚洲| 2020久久国产精品| 欧美做受高潮1| 欧美成人三级视频网站| 欧美黑人xxxⅹ高潮交| 精品女厕一区二区三区| 久久男人av资源网站| 国产欧美中文字幕| 成人观看高清在线观看免费| 日韩av在线一区二区| 国产精品视频一区二区高潮| 欧美性猛交xxxx黑人猛交| 国产91精品视频在线观看| 欧美极品xxxx| 欧美丝袜美女中出在线| 国产精品99久久久久久www| 不卡伊人av在线播放| 欧美精品激情在线| 色婷婷综合成人| 国产精品久久久久久久久久免费| 久久噜噜噜精品国产亚洲综合| 国产成人免费91av在线| 狠狠色噜噜狠狠狠狠97| 日韩av免费在线| 韩日欧美一区二区| 亚洲国产精品资源| 中文字幕精品久久| 国产日韩在线精品av| 成人激情视频网| 亚洲国产精品成人一区二区| 国产97色在线|日韩| 欧美日韩在线免费| 精品国产欧美成人夜夜嗨| 久久影院免费观看| 亚洲最大av网| 亚洲精品久久在线| 日本久久久久久久久久久| 亚洲视频网站在线观看| 国产精品jizz在线观看麻豆| 97超级碰碰碰| 国产中文欧美精品| 亚洲福利在线视频| 国产精品日韩电影| 国产伦精品一区二区三区精品视频| 5278欧美一区二区三区| 亚洲精品wwww| 日韩网站免费观看高清| 精品无码久久久久久国产| 日日摸夜夜添一区| 91九色在线视频| 综合国产在线视频| 91久久久久久国产精品| 91wwwcom在线观看| 欧美大片在线看免费观看| 国产视频精品一区二区三区| 久久精品影视伊人网| 国产精品户外野外| 亚洲欧美日韩精品久久奇米色影视| 日韩av在线免费观看| 欧美美女操人视频| 成人精品一区二区三区电影免费| 九九精品在线视频| 久热精品视频在线| 91精品久久久久久久久中文字幕| 精品国偷自产在线视频| 欧美日韩一区二区免费视频| 国产成人aa精品一区在线播放| www国产亚洲精品久久网站| 欧美在线影院在线视频| 国产97在线|亚洲| 欧美性猛交丰臀xxxxx网站| 欧美性少妇18aaaa视频| 国产91ⅴ在线精品免费观看| 91国产在线精品| 欧美性受xxxx黑人猛交| 亚洲第一免费播放区| 69av成年福利视频| 国外日韩电影在线观看| 一区二区欧美久久| 成人精品视频久久久久| 在线播放日韩专区| 欧美高清自拍一区|