先说结论:

ingress节点数量=n0

ingress限流配置

nginx.ingress.kubernetes.io/limit-rps: "n1"  

nginx.ingress.kubernetes.io/limit-burst-multiplier: "n2"

每分钟限流连接数为 (60*n1+n1*n2)*n0

ingress限流配置

nginx.ingress.kubernetes.io/limit-rps: "n1"  

nginx.ingress.kubernetes.io/limit-burst-multiplier: "n2"

每分钟限流连接数为 (n1+n1*n2)\n0

所以,当n2为定值的情况下,set rps=1和rpm=60并不等价。

解析

nginx的限流是一个队列模型。所以限流连接数为 队列长度+队列处理能力。

对应下面的配置即,rate为队列处理能力。burst为队列长度。

nginx配置

ingress控制器会把注解修改成如下nginx配置,此例子之修改了limit-rps=5或者limit-rpm=300,limit-burst-multiplier(放大系数)为默认值5。

# qps = 5
#实际效果为每分钟限流325
limit_req_zone $limit_cmRfaW5ncmVzcy1yZC1oZWxsby1sZWdhY3k zone=rd_ingress-rd-hello-legacy_rps:5m rate= 5r/s ;
limit_req zone=rd_ingress-rd-hello-legacy_rps burst=25 nodelay;
# qpm = 300
#实际效果为每分钟限流1800
limit_req_zone $limit_cmRfaW5ncmVzcy1yZC1oZWxsby1sZWdhY3k zone=rd_ingress-rd-hello-legacy_rpm:5m rate= 300r/m ;
limit_req zone=rd_ingress-rd-hello-legacy_rpm burst=1500 nodelay;

参考:

https://medium.com/titansoft-engineering/rate-limiting-for-your-kubernetes-applications-with-nginx-ingress-2e32721f7f57

https://www.nginx.com/blog/rate-limiting-nginx/

最新文章

  1. JAVA JPA - 示例用法
  2. 【原】javascript数组操作
  3. js022-高级技巧
  4. 204. Count Primes
  5. java版大数相乘
  6. vagrant WARNING: You are not using an encrypted connection
  7. Link-local address
  8. async 与 await异步编程活用基础
  9. Hash散列算法 Time33算法
  10. angular懒加载
  11. spring自动注入是单例还是多例?单例如何注入多例?
  12. Java反射交换两个整型变量的值
  13. Spring基于纯注解方式的使用
  14. 分布式 NewSQL 对比
  15. 用conda管理Python包
  16. Maven Web项目部署到Tomcat下问题
  17. java集合: ArrayList源码浅析
  18. error 1044 (42000):access denied for user ''@'localhost' to database 'quickapp' 解决方法
  19. sprintboot 发布
  20. 谷歌Chrome浏览器小于12px字号显示的BUG

热门文章

  1. 文字icon
  2. Cause: org.apache.ibatis.builder.BuilderException: Error creating document instance. Cause: org.xml.sax.SAXParseException; lineNumber: 49; columnNumber: 17; 元素类型为 "configuration" 的内容必须匹配 "
  3. Java通过注解获取方法反射运行
  4. 探索如何在java中执行python脚本
  5. 第1关—print()函数与转换
  6. c# message (转)
  7. 如何在Axure RP 8.0 中打开页面指定的动态面板
  8. Python条件语句和基本数据类型
  9. Android自动化用例编写
  10. csdn 复制