当前位置: 首页 > 知识库问答 >
问题:

linux - Nginx 的 limit_req 两种写法有什么不同了?

诸葛令
2023-09-18
limit_req_zone $binary_remote_addr zone=mylimit:10m rate=10r/s;limit_req zone=mylimit burst=20 nodelay;

limit_req_zone $binary_remote_addr zone=mylimit:10m rate=30r/s;limit_req zone=mylimit;

对于同一 IP, 实际上, nginx 接收请求和发送给后台的服务器的请求的限速都是 每分钟 30 条吧, 这两者有什么区别了? 各位大佬帮忙看看

共有1个答案

袁雅逸
2023-09-18

这两个的对比,请求速率上:第一种配置基本请求速率(10r/s)更低,但可以短时间突发到20个额外的请求,而第二种配置基本请求速率(30r/s)更高,但请求不可以超过这个速率。请求拒绝和延迟上:第一种配置用burst和nodelay参数可以有一定突发流量,而第二种配置就更严,一旦达到30r/s的限制,就会立马拒绝超过这个速率的请求。

 类似资料:
  • 本文向大家介绍Application 、Cookie和 Session 两种会话有什么不同?相关面试题,主要包含被问及Application 、Cookie和 Session 两种会话有什么不同?时的应答技巧和注意事项,需要的朋友参考一下 答:Application是用来存取整个网站全局的信息,而Session是用来存取与具体某个访问者关联的信息。Cookie是保存在客户端的,机密信息不能保存在C

  • 和有什么区别,因为两者都给出了相同的结果,而且都涉及到洗牌操作

  • 本文向大家介绍HTML的注释有几种写法?有什么规范吗?相关面试题,主要包含被问及HTML的注释有几种写法?有什么规范吗?时的应答技巧和注意事项,需要的朋友参考一下

  • 问题内容: 我们可以创建相同的GET URI,但使用不同的查询参数吗? 例如,我有两个REST GET URI: 现在,REST服务无法将两个GET方法识别为单独的,而仅将其声明为第一个GET方法。 为什么会这样呢? 有什么办法可以使两个具有不同查询参数的GET方法? 如果您可以引用任何资源,将不胜感激。 问题答案: 因为 资源 是由其 PATH 唯一标识的,而不是由其参数唯一标识的。您定义的两个

  • 问题内容: 考虑以下两种情况: (转到Playground链接) 第二个打印9.120000000000001,实际上很好 但是,为什么第一行打印9.12,但末尾没有…01?Go是否会将两个未类型化的常数相乘,并在编译时将它们简单地替换为9.12文字? 问题答案: 根据规格: 常量表达式总是精确地求值;中间值和常量本身可能需要比该语言中任何预声明类型支持的精度大得多的精度。 以来 是一个常数表达式