nginx 請(qǐng)求限制

連接頻率限制 - limit_conn_module
請(qǐng)求頻率限制 - limit_req_module


圖片.png

圖片.png

HTTP協(xié)議的連接與請(qǐng)求

HTTP請(qǐng)求建立在一次TCP連接基礎(chǔ)上
一次TCP請(qǐng)求至少產(chǎn)生一次HTTP請(qǐng)求

連接限制

語(yǔ)法配置
Syntax: limit_conn_zone key zone=name:size;
Default: -
Context:http

Syntax: limit_conn zone number;
Default: -
Context:http,server,location

連接限制

語(yǔ)法配置
Syntax: limit_req_zone key zone=name:size rate=rate;
Default: -
Context:http

Syntax: limit_req zone=name [burst=number] [nodelay];
Default: -
Context:http,server,location

使用 請(qǐng)求限制

請(qǐng)求限制
這兩個(gè)只能寫(xiě)在http中
limit_conn_zone $binanry_remote_addr zone=conn_zone:1m;
limit_req_zone $binanry_remote_addr zone=req_zone:1m rate=1r/s;
remote_addr 用戶(hù)ip地址
binanry_remote_addr 同樣是用戶(hù)地址 但是二進(jìn)制 占用空間內(nèi)存更小
rate數(shù)率 一秒一次
zone:空間 大小

ab 工具 多次請(qǐng)求 百度一下

ab -n 50 -c 20 http://xxx/index.html
-n 請(qǐng)求次數(shù)
-c 并發(fā)量

limit_conn_zone $binanry_remote_addr zone=conn_zone:1m;
limit_req_zone $binanry_remote_addr zone=req_zone:1m rate=1r/s;
server {
        location / {
                root /opt/app/code;;  #放首頁(yè)的目錄
                limit_req zone=req_zone burst=3 nodelay; 
                index   index.html    index.htm;
        }
}

limit_req zone=req_zone burst=3 nodelay;
req_zone 就是上面的命名空間
burst=3 就是有三個(gè)是延遲響應(yīng) 其他的
nodelay 其他的就直接響應(yīng)
測(cè)試ab -n 20 -c 20 http://xxx/index.html
由于限制了數(shù)率 一秒一次 所以20個(gè)并發(fā) 只有一次能完成
但是有三個(gè)延遲了 所以完成了4個(gè) 其他全部被限制了

連接限制

limit_conn_zone $binanry_remote_addr zone=conn_zone:1m;
limit_req_zone $binanry_remote_addr zone=req_zone:1m rate=1r/s;
server {
        location / {
                root /opt/app/code;;  #放首頁(yè)的目錄
               limit_conn conn_zone 1;
                index   index.html    index.htm;
        }
}

limit_conn conn_zone 1;
conn_zone 上面的 命名空間
1 同一時(shí)間只允許一個(gè)ip 連接過(guò)來(lái)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容