首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带Rate速率限制的漏桶法

带Rate速率限制的漏桶法
EN

Stack Overflow用户
提问于 2019-01-29 14:45:36
回答 1查看 366关注 0票数 1

Nginx使用漏桶方法来限制请求速率。模块

这意味着,如果我将限制设置为100 req/秒,然后被120 req/秒淹没,则100个请求将被正常处理,而20个请求将被503个错误处理。

我怎样才能用Haproxy来设置这个呢?

我读了很多关于sc_http_req_rate的文档,但因为速度总是120雷克/秒。我总是返回503个错误。

代码语言:javascript
复制
frontend main
    bind *:80
    acl foo_limited_req sc_http_req_rate(0) ge 100
    http-request track-sc0 path table Abuse     # Set the URI as the key of the table
    use_backend bk1 if foo_limited_req
    default_backend web

backend web
    server web1 192.168.0.10

backend Abuse
    stick-table type string len 128 size 100K expire 30m store http_req_rate(1s)

backend bk1
     server listenerror 127.0.0.1:81

listen errorlistener
    bind 127.0.0.1:81
    mode http
    errorfile 503 /etc/haproxy/errors/200-tuned.http

我想为web后端提供100 req/秒的流量。bk1后端的20 req/秒盈余。

EN

回答 1

Stack Overflow用户

发布于 2019-01-29 18:45:39

您需要将全局设置中的maxconn设置设置为"X",这是您想要的速率限制。

下面是我的一个例子:

代码语言:javascript
复制
global
  log         127.0.0.1 syslog
  maxconn     1000
  user        haproxy
  group       haproxy
  daemon
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54423581

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档