nginx limit模块使用

回复 收藏

参考 :

http://nginx.org/en/docs/http/ngx_http_limit_req_module.html

http://www.tuicool.com/articles/ZvyaQn

http://storysky.blog.51cto.com/628458/642970/  

第二个链接里面的nginx有点老,所以 limit_zone 改为 limit_conn_zone 

http

{

limit_conn_zone  $binary_remote_addr  zone=one:10m;

limit_req_zone  $binary_remote_addr  zone=req_one:10m rate=1r/s;

server

......

limit_conn   one  1;

limit_req   zone=req_one  burst=120;

......

}    

}

这里的 one 是声明一个 limit_zone 的名字,$binary_remote_addr是替代 $remore_addr 的变量,10m 是会话状态储存的空间limit_conn one 1 ,限制客户端并发连接数量为1

rate=1r/s 的意思是每个地址每秒只能请求一次,也就是说根据令牌桶原理 burst=120 一共有120块令牌,并且每秒钟只新增1块令牌,120块令牌发完后 多出来的那些请求就会返回503

2016-12-14 18:53 举报
已邀请:
0

哈湖搞

赞同来自:

感谢LZ分享

回复帖子,请先登录注册

退出全屏模式 全屏模式 回复
评分
可选评分理由: