Hello all, I'm moving to HA using it to replace NGINX and I've a question regarding how to do a Rate Limiting in HA that enables queuing the requests instead of closing them.
I was able to limit per IP following those examples: https://www.haproxy.com/blog/four-examples-of-haproxy-rate-limiting/ . However, when the limit is reached, the users see the error and connection is closed. Since I come from NGINX, it has this handy feature https://www.nginx.com/blog/rate-limiting-nginx/ where connections that exceed the threshold are queued. Thus the user will still be able to do the calls but be delayed without him getting errors and keep the overall number of requests within threshold. Is there anything similar in HA? It should limit/queueing the user by IP. To explain with an example, we have two users Alice, with ip A.A.A.A and Bob with ip B.B.B.B The threshold is 30r/minute. So in 1 minute: - Alice does 20 requests. -> that's fine - Bob does 60 requests. -> the system caps the requset to 30 and then process the other 30 later on (maybe also adding timeout/delay) - Alice does 50 request -> the first 40 are fine, the next 10 are queued. - Bob does 20 requests -> they are queue after the one above. I saw that it can be done in general, by limiting the connections per host. But this will mean that it's cross IP and thus, if 500 is the limit - Alice does 1 call - Bob does 1000 calls - Alice does another 1 call - Alice will be queued, that's not what i would like to have. is this possible? Is there anything similar that can be done? Thanks -- *Stefano*

