一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

nginx限制連接數(shù)ngx

 waitingnothing 2016-10-13

一. 前言

我們經(jīng)常會(huì)遇到這種情況,服務(wù)器流量異常,負(fù)載過(guò)大等等。對(duì)于大流量惡意的攻擊訪問(wèn),會(huì)帶來(lái)帶寬的浪費(fèi),服務(wù)器壓力,影響業(yè)務(wù),往往考慮對(duì)同一個(gè)ip的連接數(shù),并發(fā)數(shù)進(jìn)行限制。下面說(shuō)說(shuō)ngx_http_limit_conn_module 模塊來(lái)實(shí)現(xiàn)該需求。該模塊可以根據(jù)定義的鍵來(lái)限制每個(gè)鍵值的連接數(shù),如同一個(gè)IP來(lái)源的連接數(shù)。并不是所有的連接都會(huì)被該模塊計(jì)數(shù),只有那些正在被處理的請(qǐng)求(這些請(qǐng)求的頭信息已被完全讀入)所在的連接才會(huì)被計(jì)數(shù)。

二. ngx_http_limit_conn_module指令解釋

limit_conn_zone
語(yǔ)法: limit_conn_zone $variable zone=name:size;
默認(rèn)值: none
配置段: http
該指令描述會(huì)話狀態(tài)存儲(chǔ)區(qū)域。鍵的狀態(tài)中保存了當(dāng)前連接數(shù),鍵的值可以是特定變量的任何非空值(空值將不會(huì)被考慮)。$variable定義鍵,zone=name定義區(qū)域名稱,后面的limit_conn指令會(huì)用到的。size定義各個(gè)鍵共享內(nèi)存空間大小。如:

1
limit_conn_zone $binary_remote_addr zone=addr:10m;

注釋:客戶端的IP地址作為鍵。注意,這里使用的是$binary_remote_addr變量,而不是$remote_addr變量。
$remote_addr變量的長(zhǎng)度為7字節(jié)到15字節(jié),而存儲(chǔ)狀態(tài)在32位平臺(tái)中占用32字節(jié)或64字節(jié),在64位平臺(tái)中占用64字節(jié)。
$binary_remote_addr變量的長(zhǎng)度是固定的4字節(jié),存儲(chǔ)狀態(tài)在32位平臺(tái)中占用32字節(jié)或64字節(jié),在64位平臺(tái)中占用64字節(jié)。
1M共享空間可以保存3.2萬(wàn)個(gè)32位的狀態(tài),1.6萬(wàn)個(gè)64位的狀態(tài)。
如果共享內(nèi)存空間被耗盡,服務(wù)器將會(huì)對(duì)后續(xù)所有的請(qǐng)求返回 503 (Service Temporarily Unavailable) 錯(cuò)誤。
limit_zone 指令和limit_conn_zone指令同等意思,已經(jīng)被棄用,就不再做說(shuō)明了。

limit_conn_log_level
語(yǔ)法:limit_conn_log_level info | notice | warn | error
默認(rèn)值:error
配置段:http, server, location
當(dāng)達(dá)到最大限制連接數(shù)后,記錄日志的等級(jí)。

limit_conn
語(yǔ)法:limit_conn zone_name number
默認(rèn)值:none
配置段:http, server, location
指定每個(gè)給定鍵值的最大同時(shí)連接數(shù),當(dāng)超過(guò)這個(gè)數(shù)字時(shí)被返回503 (Service Temporarily Unavailable)錯(cuò)誤。如:

1
2
3
4
5
6
limit_conn_zone $binary_remote_addr zone=addr:10m;
server {
    location /www.ttlsa.com/ {
        limit_conn addr 1;
    }
}

同一IP同一時(shí)間只允許有一個(gè)連接。
當(dāng)多個(gè) limit_conn 指令被配置時(shí),所有的連接數(shù)限制都會(huì)生效。比如,下面配置不僅會(huì)限制單一IP來(lái)源的連接數(shù),同時(shí)也會(huì)限制單一虛擬服務(wù)器的總連接數(shù):

1
2
3
4
5
6
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指令可以從上級(jí)繼承下來(lái)。[/warning]

limit_conn_status
語(yǔ)法: limit_conn_status code;
默認(rèn)值: limit_conn_status 503;
配置段: http, server, location
該指定在1.3.15版本引入的。指定當(dāng)超過(guò)限制時(shí),返回的狀態(tài)碼。默認(rèn)是503。

limit_rate
語(yǔ)法:limit_rate rate
默認(rèn)值:0
配置段:http, server, location, if in location
對(duì)每個(gè)連接的速率限制。參數(shù)rate的單位是字節(jié)/秒,設(shè)置為0將關(guān)閉限速。 按連接限速而不是按IP限制,因此如果某個(gè)客戶端同時(shí)開(kāi)啟了兩個(gè)連接,那么客戶端的整體速率是這條指令設(shè)置值的2倍。

三. 完整實(shí)例配置

1
2
3
4
5
6
7
8
9
10
11
12
http {
limit_conn_zone $binary_remote_addr zone=limit:10m;
limit_conn_log_level info;
server {
location  ^~ /download/ {  
limit_conn limit 4;
limit_rate 200k;
alias /data/www.ttlsa.com/download/;
                }
}
}

四. 使用注意事項(xiàng)

事務(wù)都具有兩面性的。ngx_http_limit_conn_module 模塊雖說(shuō)可以解決當(dāng)前面臨的并發(fā)問(wèn)題,但是會(huì)引入另外一些問(wèn)題的。如前端如果有做LVS或反代,而我們后端啟用了該模塊功能,那不是非常多503錯(cuò)誤了?這樣的話,可以在前端啟用該模塊,要么就是設(shè)置白名單,白名單設(shè)置參見(jiàn)后續(xù)的文檔,我會(huì)整理一份以供讀者參考。
可以與ngx_http_limit_req_module 模塊結(jié)合起來(lái)使用,以達(dá)到最好效果?!?a href='http://www./html/3185.html'>nginx限制請(qǐng)求數(shù)ngx_http_limit_req_module模塊》。

如需轉(zhuǎn)載請(qǐng)注明出處:http://www./html/3180.html

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    福利视频一区二区三区| 欧美成人免费夜夜黄啪啪| 久久国产青偷人人妻潘金莲| 日韩蜜桃一区二区三区| 激情综合网俺也狠狠地| 91欧美日韩中在线视频| 欧美激情一区=区三区| 国产欧美日韩不卡在线视频| 激情亚洲内射一区二区三区| 老司机精品福利视频在线播放| 日本中文在线不卡视频| 偷拍洗澡一区二区三区| 日木乱偷人妻中文字幕在线| 精品欧美日韩一二三区| 日本熟妇五十一区二区三区 | 精品老司机视频在线观看| 亚洲天堂精品1024| 国产精品免费自拍视频| 亚洲国产av在线观看一区| 国产又猛又大又长又粗| 婷婷基地五月激情五月| 欧美野外在线刺激在线观看 | 亚洲国产精品久久网午夜| 国产内射一级二级三级| 日本亚洲精品在线观看| 国产亚洲神马午夜福利| 国产又粗又猛又爽又黄| 狠狠做深爱婷婷久久综合| 日韩黄片大全免费在线看| 午夜直播免费福利平台| 亚洲国产精品久久网午夜| 久久人人爽人人爽大片av| 午夜福利网午夜福利网| 国产精品色热综合在线| 午夜福利精品视频视频| 亚洲av专区在线观看| 色婷婷亚洲精品综合网| 欧美亚洲91在线视频| 可以在线看的欧美黄片| 日本加勒比不卡二三四区| 风间中文字幕亚洲一区|