nginx 限速

注意:

nginx 1.1.8 之后的版本的语法改为limit_conn_zone $binary_remote_addr zone=NAME:10m;

NAME 就是 zone 的名字详情请看这里 http://nginx.org/en/docs/http/ngx_http_limit_conn_module.html

 

限制连接数:

要限制连接,必须先有一个容器对连接进行计数,在http段加入如下代码:

"zone=" 给它一个名字,可以随便叫,这个名字要跟下面的 limit_conn 一致

$binary_remote_addr = 用二进制来储存客户端的地址,1m 可以储存 32000 个并发会话

 

... 省掉 N 字

http

{

limit_conn_zone $binary_remote_addr zone=addr:10m;

 

接下来需要对server不同的位置(location段)进行限速,比如限制每个IP并发连接数为1,则

server

{

listen 80;

server_name 192.168.11.128;

index index.html index.htm index.php;

limit_conn addr 1; #是限制每个IP只能发起1个连接 (addr 要跟 limit_conn_zone 的变量对应)

limit_rate 100k; #限速为 100KB/秒

root html;

 

注意事项:

limit_rate 100k; //是对每个连接限速100k。这里是对连接限速,而不是对IP限速!如果一个IP允许两个并发连接,那么这个IP就是限速limit_rate * 2

转载于:https://my.oschina.net/u/3627093/blog/1527683

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值