I have about 10x sources or different ip addresses and sending requests to squid .
imagine we have 10 servers and sending burst in sometimes due to nature of Traffic ….i have a sensitive APP on squid that must be equalized to handle only 50 req/sec . “ No more “
i just want to equalize all incoming requests which can be in some seconds 60 , 40 , 90 , 100 , 50 to have steady 50 req/sec on squid equally and even if we need to delay some packs its ok , just keep squid handle 50 req/sec of those incoming requests no more .
i know squid can limit connections and Drop connections above threshold , but i need only to discipline and Buffer and try to decrease dropped requests as possible and normalize all incoming requests to be steady 50 req/sec inside squid whatever there is burst outside or higher than 50 .
So again just need to apply that on “ new requests “ not on already “ established “ connections .
Let me know Guys if squid can do something like that or we need 3rd party outside squid .
> just need to apply that on “ new requests “ not on already “ established “ connections
You can probably do this using an external ACL. The program implementing
your external ACL can delay incoming requests to make sure that the
aggregate served request rate is at most 50/s. You will need to write
that program or find something suitable on the web.
N.B. One connection may carry many HTTP requests. To implement the limit
correctly, you will need to clarify whether the limit should apply to
new requests on established connections. The external ACL helper can
support any answer to that question, but its code will be different
depending on your answer.