Rumah  >  Soal Jawab  >  teks badan

nginx - Menggunakan ngx_http_limit_conn_module mengikut tutorial, bilangan sambungan serentak hos maya tidak boleh dihadkan

Saya mengikuti http://www.jb51.net/article/7... untuk mengkonfigurasi fail nginx.conf untuk mengehadkan bilangan sambungan serentak ke hos maya Berikut ialah kandungan utama dalam nginx.conf.

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;
    }
}
}


Selepas konfigurasi selesai, muat semula fail konfigurasi dan gunakan alat ab apache untuk melakukan ujian tekanan pada 192.168.3.161:54321/index.html Kod ujian tekanan adalah seperti berikut:
/usr/bin/ab -c 2000 -n 100000 http:// /192.168.3.161:54321/in...

对网站加压时,利用浏览器访问192.168.3.161:54321/status观察并发连接数,发现Active connections依然大于100,如下图所示。

Maaf, di manakah masalah dengan konfigurasi saya?

ringa_leeringa_lee2712 hari yang lalu672

membalas semua(3)saya akan balas

  • PHP中文网

    PHP中文网2017-05-16 17:16:08

    Mengubah pemikiran saya.
    Kod had yang ditulis sebelum ini ialah: limit_conn_zone $server_name zone=perserver:10m;
    Menggunakan pembolehubah $server_name terbina dalam nginx, ia tidak boleh berjaya mengehadkan bilangan sambungan serentak.
    Saya menukar kepada: limit_conn_zone $server_port zone=perserver:10m;
    Berjaya mengehadkan bilangan sambungan serentak pada port tertentu

    balas
    0
  • 習慣沉默

    習慣沉默2017-05-16 17:16:08

    Boleh guna

    limit_conn_zone $binary_remote_addr zone=perserver:10M; 
    Bentuk

    $binary_remote_addr
    

    bermaksud menggunakan alamat IP pengguna, menggunakan $binary_remote_addr sebagai Kekunci, dan alamat IP mempunyai makna yang terhad. $server_name yang anda tulis di atas tidak sesuai sebagai kriteria untuk menilai bilangan sambungan pengguna

    balas
    0
  • 伊谢尔伦

    伊谢尔伦2017-05-16 17:16:08

    Oleh kerana modul ini dilaksanakan dalam peringkat PREACCESS, ia mesti berlaku dalam peringkat pemprosesan permintaan http selepas sambungan tcp diwujudkan. Nilai sambungan Aktif di atas harus merujuk kepada bilangan sambungan tcp serentak. Walaupun bilangan concurrency melebihi dan 503 dikembalikan, ini adalah berdasarkan sambungan TCP yang berjaya.

    balas
    0
  • Batalbalas