前言

前一篇记录了如何使用Nginx代理Vue项目,今天记录如果使用Nginx配置location限流,本篇是Nginx专栏第5篇, 有想学习nginx的可以订阅下该专栏,大家一起讨论,有问题可以留言或者私信。


一、在nginx.conf的http块配置限速规则

http {# 根据ip限制速率,zone=名称:(桶)大小,放不下会丢弃请求,rate=同IP 5次/s ,平均200ms/次limit_req_zone $binary_remote_addr zone=ratelimit:30m rate=5r/s;}

二、在nginx.conf的location块配置使用规则

location / {#burst是突发流量先不拒绝,单ip允许额外5个请求放入队列,nodelay降低突发流量排队,只要队列里有数据,就马上分配worker处理limit_req zone=ratelimit burst=5 nodelay;#当限制时,返回的状态码503 不可访问limit_conn_status 503; }

三、完整的nginx.conf示例

  http {keepalive_timeout 75s;sendfile        on; #当nginx代理的是静态文件服务的时候,打开这个会提升性能tcp_nopush      on; #启用linux上的tcp_cork套接字选项,它只能配合sendfile一起使用# 根据ip限制速率,zone=名称:(桶)大小,放不下会丢弃请求,rate=同IP 5次/s ,平均200ms/次limit_req_zone $binary_remote_addr zone=ratelimit:30m rate=5r/s;server {listen      80; #监听端口server_name  my.domain.cn;  #域名charset utf-8; #设置字符集root   /opt/web/order/dist;  #vue项目路径location / {#burst是突发流量先不拒绝,单ip允许额外5个请求放入队列,nodelay降低突发流量排队,只要队列里有数据,就马上分配worker处理limit_req zone=ratelimit burst=5 nodelay;#当限制时,返回的状态码503 不可访问limit_conn_status 503; index  /index.html;try_files $uri $uri/ /index.html;}}}

四、重新加载nginx.conf后查看效果吧

当重新加载nginx.conf后 我可以快速刷新对应的页面进行对应的location请求, 会发页面有时候会出现503的提示. 证明配置生效了.


总结

本章记录如何给nginx配置根据ip限流, 如果有突发流量时, 又是配置说明策略处理的。有不懂的地方可以留言提问, 私信也可以。

nginx根据ip限流和突发流量配置解释相关推荐

  1. 分布式接口幂等性、分布式限流:Guava 、nginx和lua限流

    点击关注公众号,实用技术文章及时了解 一.接口幂等性 接口幂等性就是用户对于同一操作发起的一次请求或者多次请求的结果是一致的,不会因为多次点击而产生了副作用.举个最简单的例子,那就是支付,用户购买商品 ...

  2. 分布式接口幂等性、分布式限流(Guava 、nginx和lua限流)

    一.接口幂等性 接口幂等性就是用户对于同一操作发起的一次请求或者多次请求的结果是一致的,不会因为多次点击而产生了副作用.举个最简单的例子,那就是支付,用户购买商品后支付,支付扣款成功,但是返回结果的时 ...

  3. Easyswoole 令牌桶IP限流实现(企业实用)

    使用Easyswoole 开发项目有一段时间了,官方的ip 限流方法比较简陋,我这里自己手动实现了一套基于令牌桶算法限流的方案,这里记录分享下 实现功能 1:根据ip 限速 2:可以配置缓冲池,防止突 ...

  4. Nginx(OpenResty)+Lua+Redis IP限流 10s内

    使用 OpenResty 可以不用再次编译nginx 就能集成对应lua环境 可以扩展的模块比较丰富 1.使用redis 控制限流 ip 访问频度 创建对应lua脚本 access_by_limit_ ...

  5. 如何使用 Nginx 优雅地限流?

    限流算法 令牌桶算法 令牌桶算法 算法思想是: 令牌以固定速率产生,并缓存到令牌桶中: 令牌桶放满时,多余的令牌被丢弃: 请求要消耗等比例的令牌才能被处理: 令牌不够时,请求被缓存. 漏桶算法 漏桶算 ...

  6. nginx+lua实现限流降级(使用lua的lua-resty-limit-traffic)

    前言 虽然nginx中自带了限流的模块,只能直接限定超出的数量,但对于允许范围内的流量如何进行限流是个问题.nginx的限流方式! limit_conn perserver 100;limit_con ...

  7. ftp限流java,FTP流量限制的方法

    一般来说,下载都是通过FTP来实现的,这样简单的采用ACLs就可以实现的.不过这样存在一个问题,就是原来正常的网络访问也给禁止了,无法继续工作,另外,还有大量的DOWNLOAD不通过FTP,而是借助H ...

  8. nginx的限流配置

    本文来说下nginx的限流配置 文章目录 概述 Nginx如何限流 配置基本的限流 处理突发 无延迟的排队 高级配置示例 location包含多limit_req指令 配置相关功能 发送到客户端的错误 ...

  9. Nginx限流和黑名单配置

    目录 1 背景介绍 2 Nginx 的限流策略 2.1 limit_req_zone限制访问频率 2.2 limit_conn_zone限制最大连接数 3 黑名单设置 1 背景介绍 为了防止一些抢票助 ...

最新文章

  1. SQL Server 将指定的数据库中的所有表都列出来
  2. jquery官网打不开难以下载,不妨试试webjars
  3. ciaodvd数据集的简单介绍_人工智能进阶-CIFAR-10数据集介绍
  4. 将本地项目上传到Github的两种方式 1.在线上传 2.使用Git客户端上传
  5. 如何在水晶报表显示上下标
  6. document 文挡对象详解(JavaScript脚本语言描述)
  7. dedecms自定义表单提交成功后提示信息修改和跳转链接修改
  8. Qt的信号槽机制介绍
  9. Mac下安装emacs+cscopse+auto-complete
  10. Codeforces Round #354 (Div. 2) A. Nicholas and Permutation
  11. 比赛打分时,管理员如何完成的选手分类排行展示?
  12. 国产机GSM系列手机常见芯片方案介绍
  13. 海康萤石云硬盘录像机SDK使用
  14. div+css+js实现深圳交互地图
  15. Synonyms 中文近义词工具包 -- 支持文本对齐,推荐算法,相似度计算,语义偏移,关键字提取,概念提取,自动摘要,搜索引擎等
  16. 通达oa2015 php解密,通达OA /interface/auth.php SQL注入
  17. 深度学习与TensorFlow实战(十)卷积神经网络—VGG(16)神经网络
  18. mysql longtext_MySql中LongText类型大字段查询优化
  19. 程序员自我修养——提问的智慧
  20. [精华]史上最强买笔记本电脑专业精粹导购指南,让奸商彻底晕菜!

热门文章

  1. Windows位图文件格式[转]
  2. 一丶脚本的下载与安装
  3. Win10 配置Java JDK 16 环境变量
  4. 华为c8815手机在开发Android调试时logcat不显示输出信息的解决办法
  5. 百度区块链 XuperChain开发教程(第二部分)
  6. win7系统笔记本架设无线热点(AP)
  7. Java中List集合过滤出符合条件的List元素集合
  8. Docker容器化技术笔记
  9. 【UE5】蓝图制作简单地雷教程
  10. 使用 NumPy 来模拟随机游走(Random Walk)