一、限制并发连接数的配置方法如下:
1、在nginx.conf里的http{}里加上如下代码:
#在其中的36行加入下面的内容(在http{}模块中加入的)
要限制连接,必须先有一个容器对连接进行计数,在http段加入如下代码:
-
"zone=" 给它一个名字,可以随便叫,这个名字要跟下面的 limit_conn 一致
-
$binary_remote_addr = 用二进制来储存客户端的地址,1m 可以储存 32000 个并发会话。 $binary_remote_addr是限制同一客户端ip地址
2、在需要限制并发数的网站配置server{}里加上如下代码:
#结合配置文件中server{}中的定义,我们可以知道,该location模块表示:在访问http://localhost/download/...内容(或者http://172.25.8.1/...内容)时,进行并发数为1的限制
#限制每个IP只能发起1个连接(addr 要跟 limit_conn_zone 的变量对应)
limit_conn为限制并发连接数
3、修改完配置文件nginx.conf之后,重新加载nginx服务
4、进行测试:
#在nginx的默认发布目录中创建download目录,并在网上随意下载图片到该目录中(我这里下载的是vim.jpg)
#在物理机上进行访问的测试
二、限制下载速率的配置方法如下:
1、在需要限制下载速率的网站配置server{}里加上如下代码:
是对每个连接限速50k。这里是对连接限速,而不是对IP限速!如果一个IP允许两个并发连接,那么这个IP就是限速limit_rate * 2
2、在需要限制并发数的网站配置server{}里加上如下代码:
3、进行测试:
#我们可以看到速率在50k左右