国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

nginx - 依教學(xué)使用ngx_http_limit_conn_module,無(wú)法限制虛擬主機(jī)的並發(fā)連線數(shù)
ringa_lee
ringa_lee 2017-05-16 17:14:08
0
3
888

自己依照http://www.jb51.net/article/7... 設(shè)定nginx.conf檔案限制虛擬主機(jī)的並發(fā)連線數(shù),如下是nginx.conf中的主要內(nèi)容。

http {

limit_conn_zone $server_name zone=perserver:10m;
include       mime.types;
default_type  application/octet-stream;

sendfile        on;
keepalive_timeout  65;

server {
    listen       54321;
    server_name  localhost;
    limit_conn perserver 100;
    #charset koi8-r;
    #access_log  logs/host.access.log  main;
    location / {
        root   html;
        index  index.html index.htm;
    }        
    location /status {
        stub_status on;
        access_log off;
    }
}
}


設(shè)定完成後,reload設(shè)定文件,並利用apache的ab工具向192.168.3.161:54321/index.html進(jìn)行壓力測(cè)試,壓力測(cè)試程式碼如下:
/usr/bin/ab -c 2000 -n 100000 http://192.168.3.161:54321/in...

對(duì)網(wǎng)站加壓時(shí),利用瀏覽器訪問(wèn)192.168.3.161:54321/status觀察并發(fā)連接數(shù),發(fā)現(xiàn)Active connections依然大于100,如下圖所示。

#請(qǐng)問(wèn)我的配置哪裡出現(xiàn)了問(wèn)題?

ringa_lee
ringa_lee

ringa_lee

全部回覆(3)
洪濤

換了思路。
之前寫(xiě)的限製代碼為:limit_conn_zone $server_name zone=perserver:10m;
利用了nginx內(nèi)建的$server_name這個(gè)變量,沒(méi)法成功限制並發(fā)連線數(shù)。
我換成了:limit_conn_zone $server_port zone=perserver:10m;
成功限制了某個(gè)連接埠的並發(fā)連線數(shù)

習(xí)慣沉默

你可以用

limit_conn_zone $binary_remote_addr zone=perserver:10M; 

的形式唄

$binary_remote_addr

才代表用 用戶的 IP 位址,用 $binary_remote_addr 作為 Key,IP 位址,就有限制的意義。你上面寫(xiě)的$server_name,就不適合作為對(duì)使用者連線數(shù)的判斷條件了

伊謝爾倫

因?yàn)檫@個(gè)模組是在PREACCESS階段執(zhí)行的,所以必然已經(jīng)發(fā)生在tcp連線建立之後的http請(qǐng)求處理階段了。上面的Active connections數(shù)值指的應(yīng)該是tcp連接的同時(shí)數(shù)吧。即便超過(guò)了並發(fā)數(shù),回傳了503,這也是在一次成功的tcp連線之上的。

最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板