nginx limit配置參數(shù)解讀 限速(帶寬、連接數(shù)、請求數(shù)))

limit_rate

名稱默認(rèn)配置作用域官方說明中文解讀模塊

limit_ratelimit_rate 0;http, server, location, if in locationLimits the rate of response transmission to a client. The rate is specified in bytes per second. The zero value disables rate limiting. The limit is set per a request, and so if a client simultaneously opens two connections, the overall rate will be twice as much as the specified limit.指定每秒該連接能下載的bytes,主要用來限制個別請求的帶寬ngx_http_core_module

limit_rate_afterlimit_rate_after 0;http, server, location, if in locationSets the initial amount after which the further transmission of a response to a client will be rate limited.設(shè)置多少bytes過后將啟動limit計(jì)數(shù),如果小于此值則不限速ngx_http_core_module

limit_except沒有默認(rèn)值locationLimits allowed HTTP methods inside a location. The method parameter can be one of the following: GET, HEAD, POST, PUT, DELETE, MKCOL, COPY, MOVE, OPTIONS, PROPFIND, PROPPATCH, LOCK, UNLOCK, or PATCH. Allowing the GET method makes the HEAD method also allowed設(shè)置除了指定的http methods外其他method將被限制,允許GET就自動允許HEAD方法ngx_http_core_module

實(shí)例

location /downloads {? ? ? ? ? ? limit_rate_after1m;? ? ? ? ? ? limit_rate500k;? ? ? ? }? ? ? ? location / {? ? ? ? ? ? proxy_pass http://localhost:3000;limit_except GET {? ? ? ? ? ? ? ? deny all;? ? ? ? ? ? }? ? ? ? }

limit_conn

名稱默認(rèn)配置作用域官方說明中文解讀模塊

limit_conn沒有默認(rèn)值,語法 limit_conn zone number;http, server, locationSets the shared memory zone and the maximum allowed number of connections for a given key value. When this limit is exceeded, the server will return the error in reply to a request.指定一個zone的每個key最大連接數(shù)ngx_http_limit_conn_module

limit_conn_zone沒有默認(rèn)值,語法 limit_conn_zone key zone=name:size;httpSets parameters for a shared memory zone that will keep states for various keys. In particular, the state includes the current number of connections. The key can contain text, variables, and their combination. Requests with an empty key value are not accounted.第一個參數(shù)是key,第二個參數(shù)是指定zone及其存放元數(shù)據(jù)(key,current num of conns per key,zone size)的共享內(nèi)存大小ngx_http_limit_conn_module

limit_conn_log_levellimit_conn_log_level error;http, server, locationSets the desired logging level for cases when the server limits the number of connections. This directive appeared in version 0.8.18.指定當(dāng)觸發(fā)limit的時候日志打印級別ngx_http_limit_conn_module

實(shí)例

http {? ? limit_conn_zone$binary_remote_addrzone=ips:10m;? ? limit_conn_zone$server_namezone=servers:10m;? ? limit_conn_log_level notice;? ? server {# these limits apply to the whole virtual serverlimit_conn ips 10;# only 1000 simultaneous connections to the same server_namelimit_conn servers 1000;? ? }}

limit_req

名稱默認(rèn)配置作用域官方說明中文解讀模塊

limit_req沒有默認(rèn)值,語法 limit_req zone=name [burst=number] [nodelay];http, server, locationSets the shared memory zone and the maximum burst size of requests. If the requests rate exceeds the rate configured for a zone, their processing is delayed such that requests are processed at a defined rate. Excessive requests are delayed until their number exceeds the maximum burst size in which case the request is terminated with an error.指定zone的burst大小ngx_http_limit_req_module

limit_req_zone沒有默認(rèn)值,語法 limit_req_zone key zone=name:size rate=rate;httpSets parameters for a shared memory zone that will keep states for various keys. In particular, the state stores the current number of excessive requests. The key can contain text, variables, and their combination. Requests with an empty key value are not accounted.第一個參數(shù)指定key,第二個參數(shù)指定zone名稱和元數(shù)據(jù)的內(nèi)存大小,第三個參數(shù)rate指定單位時間的請求數(shù)閾值ngx_http_limit_req_module

limit_req_log_levellimit_req_log_level error;http, server, locationSets the desired logging level for cases when the server refuses to process requests due to rate exceeding, or delays request processing. Logging level for delays is one point less than for refusals.指定觸發(fā)req limit時打印的日志級別ngx_http_limit_req_module

實(shí)例

http { limit_req_zone$binary_remote_addrzone=myreqzone:10m limit_req_log_level warn; server {## 每個ip限定10個連接數(shù)## 正常一個瀏覽器給每個host開兩到三個連接## 觸發(fā)的話會返回503## nodelay表示一上來就直接計(jì)算,不經(jīng)過一些預(yù)熱后再計(jì)算limit_req zone=myreqzone burst=10 nodelay; }}

doc

ngx_http_core_module

ngx_http_limit_conn_module

ngx_http_limit_req_module



limit_conn (限制客戶端的并發(fā)連接數(shù))測試方法:

配置如下:

server {

? ? ? ? listen 5657;

? ? ? ? server_name server_bb;

? ? ? ? limit_rate 100k;

? ? ? ? limit_conn server_bb 1;

? ? ? ? location / {

? ? ? ? ? ? root html;

? ? ? ? }?

? ? }

}

curl一個大文件:

curl http://192.168.137.101:5657/test

之后查看nginx上的連接數(shù)

[root@fanpf-resty conf]# netstat -anpt | grep 192.168.137.201 | grep? ESTABLISHED | wc -l

1

再次curl一個大文件:

curl http://192.168.137.101:5657/test

返回503:

<html>

<head><title>503 Service Temporarily Unavailable</title></head>

<body>

<center><h1>503 Service Temporarily Unavailable</h1></center>

<hr><center>openresty/1.15.8.1rc1</center>

</body>

</html>

證明每個客戶端限制1個鏈接成功了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,885評論 6 541
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 99,312評論 3 429
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 177,993評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,667評論 1 317
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 72,410評論 6 411
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 55,778評論 1 328
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,775評論 3 446
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 42,955評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,521評論 1 335
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 41,266評論 3 358
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 43,468評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,998評論 5 363
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 44,696評論 3 348
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,095評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,385評論 1 294
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,193評論 3 398
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 48,431評論 2 378