Hi,

I've been toying with haproxy and rate limiting lately, and noticed an odd
behavior with rate-limit sessions, or maybe I misunderstood how it is supposed
to be used.

I'm using the following config:

global
    maxconn     20000
    log         127.0.0.1 local0
    user        haproxy
    chroot      /usr/share/haproxy
    pidfile     /run/haproxy.pid
    daemon
        stats socket /var/run/haproxy.sock

defaults
        mode http

frontend  fe_foo
    bind *:1234
    bind *:1235 ssl crt /etc/haproxy/www.pem
    rate-limit sessions 10
    default_backend be_foo

backend be_foo
    server s1 127.0.0.1:8001

I'm using ab to send traffic to the frontend.

1/ ab -c 40 -n 100 http://127.0.0.1:1234/

the output of show info shows maxconnrate 10 and maxsessrate 10.
This is coherent with the value I set for rate-limit sessions.

2/ ab -c 40 -n 100 https://127.0.0.1:1235/

the output of show info shows maxconnrate, maxsslrate, maxsessrate and
sslfrontendmaxkeyrate equal 40, 4 times the value for my rate-limit sessions.

Am I doing something wrong here ?

thanks,
Jérôme

Reply via email to