I was wondering if it was possible with HAProxy to allow only one connection per backend server followed by a type of ‘cooldown’ which temporarily disables that particular backend server for a period of time. Another way to describe would be only allowing one connection per X time (not per one second which maxconnrate seems to do).
If anyone could shed some light on this, that would be great!
What are you trying to achieve?
Effectively rate limiting the requests by server (not by user) to ensure a server can not be used more than 10 times in 60 seconds for example.
Limiting the amount of currently active requests does not do the job for you? That is what the usual recommendation to avoid server overload looks like, and can be configured easily by using the
maxconn parameter (as server option).
Apologies for the delay. Thanks for your help so far!
I am not trying to prevent server overload. I am trying to prevent reaching bandwidth/daily request limitations with the backend servers I am using (the reasons are not relevant).
Is this something that HAProxy is just not the right solution for?