nginx limit_req限速设置

2012年11月26日 上午 13:17 | 作者:hemon

WIKI:

http://wiki.nginx.org/HttpLimitReqModule

漏桶原理(leaky bucket):

http://en.wikipedia.org/wiki/Leaky_bucket

实例:

#以用户二进制IP地址,定义三个漏桶,滴落速率1-3req/sec,桶空间1m,1M能保持大约16000个(IP)状态
limit_req_zone  $binary_remote_addr  zone=qps1:1m   rate=1r/s;
limit_req_zone  $binary_remote_addr  zone=qps2:1m   rate=2r/s;
limit_req_zone  $binary_remote_addr  zone=qps3:1m   rate=3r/s;server {#速率qps=1,峰值burst=5,延迟请求
#严格按照漏桶速率qps=1处理每秒请求
#在峰值burst=5以内的并发请求,会被挂起,延迟处理
#超出请求数限制则直接返回503
#客户端只要控制并发在峰值[burst]内,就不会触发limit_req_error_log
# 例1:发起一个并发请求=6,拒绝1个,处理1个,进入延迟队列4个:
#time    request    refuse    sucess    delay
#00:01        6        1        1            4
#00:02        0        0        1            3
#00:03        0        0        1            2
#00:04        0        0        1            1
#00:05        0        0        1            0
location /delay {limit_req   zone=qps1  burst=5;
}#速率qps=1,峰值burst=5,不延迟请求
#加了nodelay之后,漏桶控制一段时长内的平均qps = 漏桶速率,允许瞬时的峰值qps > 漏桶qps
#所以峰值时的最高qps=(brust+qps-1)=5
#请求不会被delay,要么处理,要么直接返回503
#客户端需要控制qps每秒请求数,才不会触发limit_req_error_log
# 例2:每隔5秒发起一次达到峰值的并发请求,由于时间段内平均qps=1 所以仍然符合漏桶速率:
#time    request     refuse    sucess
#00:01         5         0          5
#00:05         5         0          5
#00:10         5         0          5
# 例3:连续每秒发起并发请求=5,由于时间段内平均qps>>1,超出的请求被拒绝:
#time    request     refuse     sucess
#00:01         5         0           5
#00:02         5         4           1
#00:03         5         4           1location /nodelay {limit_req   zone=qps1  burst=5 nodelay;
}}

nginx limit_req限速设置相关推荐

  1. Nginx:Nginx limit_req limit_conn限速

    简介 Nginx是一个异步框架的Web服务器,也可以用作反向代理,负载均衡器和HTTP缓存,最常用的便是Web服务器.nginx对于预防一些攻击也是很有效的,例如CC攻击,爬虫,本文将介绍限制这些攻击 ...

  2. linux下nginx与php设置开机启动代码

    2019独角兽企业重金招聘Python工程师标准>>> nginx设置成开机自启动 1.vi /etc/init.d/nginx 输入如下内容 #!/bin/bash # nginx ...

  3. limux php启动_linux下nginx与php设置开机启动代码

    nginx设置成开机自启动 1.vi /etc/init.d/nginx 输入如下内容 #!/bin/bash # nginx Startup script for the Nginx HTTP Se ...

  4. (转)Nginx反向代理设置 从80端口转向其他端口

    from :http://www.cnblogs.com/wuyou/p/3455381.html Nginx反向代理设置 从80端口转向其他端口 反向代理(Reverse Proxy)方式是指以代理 ...

  5. Nginx根据路径设置静态资源

    Nginx根据路径设置静态资源 示例nginx.conf user root; worker_processes auto; error_log /var/log/nginx/error.log; p ...

  6. nginx多域名设置和多子目录实现共用一端口

    nginx多域名设置,多子目录,共用一端口 nginx多域名设置,多子目录,公用一端口 前段时间自己买了一个80G的服务器,所以想把原来的网站都整合到这台服务器上面,现在在服务器上绑定了五个域名. 下 ...

  7. Nginx白名单设置

    Nginx白名单设置 配置文件 Nginx重启 其他命令 配置文件 nginx应用的配置文件,conf文件夹nginx.conf文件 在HTTP属性中配置白名单IP,在IP后的1代表可以访问,0代表不 ...

  8. linux 限速命令,Linux路由器限速设置详细教程

    linux的开源和免费使得越来越多的厂家用它来做防火墙和路由器,如海蜘蛛,飞鱼星等,其实我们也可以用linux来打造一台高性能的路由器.下面就以red hat为例(其他版本大同小异)教大家做一台能限速 ...

  9. linux 限速命令,Linux路由器限速设置进程

    Linux路由器限速设置进程 设备linux假定是菜鸟请设备时设备图形桌面.Linux路由器限速的设置进程如下: 路由器限速榜首步:树立adsl联接,在体系设置--网络设置处有.在图形界面下很简略搞定 ...

  10. 图解关于路由器限速设置的具体方法

    在使用路由器的过程中,我们经常会使用迅雷和BT下载,而它们是特别占用网速的,所以路由器限速设置就显得很重要,于是我研究了一下路由器限速设置的具体方法和步骤,在这里拿出来和大家分享一下,希望对大家有用. ...

最新文章

  1. iOS开发者帐号申请指南
  2. 更改管理GPO的域控制器
  3. linux 重启udev服务,Linux 7.x 中 UDEV 生效的方法
  4. 开放下载!《iOS开发者必读资讯》
  5. Angular 内容投影 II
  6. 苏老师首播3小时!超500人观看!录屏!源码!PPT……你要的都在这里!
  7. html添加工具栏,添加带有命令的工具栏 (HTML)
  8. 抖音python课程价格_抖音
  9. python中的一些基础
  10. 震惊!腾讯要建AI鹅厂,百度让狗刷脸购物,锤子R-1真机披露
  11. Https iOS需要做的事
  12. Cache总容量计算与写回法联合使用
  13. ldconfig为空时会清已有的链接?
  14. 吴恩达机器学习课程笔记
  15. 游牛音乐网源码/音乐网网站平台源码
  16. 冰点文库下载器V3.2.4
  17. LS1012ARDB - How to reflash u-boot / RCW via built in Kinetis CMSIS-DAP
  18. 流行编曲(6)副旋律&合声
  19. LQ0195 史丰收速算【程序填空】
  20. 气传导蓝牙耳机优缺点有哪些?气传导耳机科普及推荐

热门文章

  1. TCP发送端突发性(burst)发送报文的成因
  2. dms系统与mysql_Mysql的两种存储引擎以及区别
  3. python web环境傻瓜搭建_工具赋能Python环境搭建
  4. python opencv轮廓检测_OpenCV-Python实现轮廓检测实例分析
  5. mac vi快速删除_Mac下Vim编辑快捷键小结
  6. java 不同时区时间转换_Java中的时区转换小结
  7. linux系统的总父目录,Linux虚拟文件系统-资料路径名的解析(2)-回退父目录
  8. java到js的中文无法显示,中文显示位(?)
  9. Spring源码分析笔记--AOP
  10. tmux使用(程序员适用)