设置 nginx 流量限制

发布时间:2019-09-18编辑:脚本学堂
设置 nginx 流量限制,供大家学习参考。

设置 nginx 流量限制,供大家学习参考。

昨天刚把论坛迁移到我新准备的服务器上,新的服务器我的的是nginx+mysql+php+memache+squid, 按理说应该不错了。
当今天上班的时候,刚到公司老总就说网站很慢,我就奇怪了怎么会呢?
我查看了流量,很大。但是正常的,访问已经升到几千了。
我想会不会机房的交换机有问题了。之前出现过网站访问很慢,热插拔网卡就ok了。
同样我也做了 效果不佳。主站流量很小。大部分都在论坛上。
我感觉可能论坛人数一多把带宽占满了。

 1、首先我限制并发数了
 iptables -A INPUT  -p tcp --dport 80 -m limit --limit 6/s -j ACCEPT
 将每个用户限制在每秒6个请求
 但效果不明显。
 
 2、然后我开始设置nginx的流量请求
 修改配置文件
 

复制代码 代码如下:
http{
      limit_zone one $binary_remote_addr 10m;
      limit_conn one 5;
     #    limit_req_zone $binary_remote_addr zone=one2:10m rate=5r/s;
     #    limit_req zone=one2 burst=5;
   .................
   .................
      }
    在server {
             ....
            .....
            location / {
         #limit zone
           limit_conn one 10;
            limit_rate 10k;
             }
          }

#这个代码是限制速率和并发连接数
:limit_zone(limit_conn) 来限制并发数,limit_rate来限制下载的速率
当然,这些都可以在好一点的交换机上去分配带宽,如果您手上的有相关的设备那是再好不过了。