Limite de solicitações máximas / segundo para um caminho específico no HAProxy

2

Estou tentando alcançar este cenário:

Apenas em um caminho específico, recebo 9 solicitações / seg constantes no frontend. Está tudo bem, use o back-end normal. Agora recebo 11 req / s, desejo rejeitar todas as solicitações acima de 10. Mas ainda quero continuar respondendo a um máximo de 10 req / s.

Tudo o que encontrei e tentei implementar (assim: link ), são soluções em preto ou branco, cai tudo quando a taxa é atingida. Portanto, é uma proteção contra DDOS, abusador, mas não uma solução limitadora de taxa real.

Existe alguma maneira de conseguir isso?
PS: usando HAproxy 1.5.8

    
por Bastien974 07.07.2015 / 22:12

1 resposta

6

Se você quiser usar rate-limit sessions , o seguinte é viável para você?

frontend http_in
   bind 0.0.0.0:80
   acl is_path url_beg /path/example/
   use_backend forwarder if is_path

backend forwarder
   server localhost 127.0.0.1:4444 send-proxy

frontend limit_path_backend
   bind 127.0.0.1:4444 accept-proxy
   rate-limit sessions 10
   default_backend webnodes
    
por 10.07.2015 / 00:07