On 7/13/2012 4:16 AM, Ming-Ching Tiew wrote:
Sorry I am offering no help but I am interested to know how do you set
up a stress test environment.
I supposed it's an automatic script based stress tests ?
Rgds.
well it's pretty simple.
my setup is like this:
gw\dns\dhcp\cahce\icap = server(intel atom d510 2gb ram 500GB sata HD)
windows 7 = client(core i3 4gb ram..)
linux = client(intel atom d410 2gb ram 160gb)
the network is 1Gbit.
wan = 5Bmit
i have vm on the corei3 with nginx that serv static pages.
to test the icap server i wrote a ruby script and changed the linux
systems ulimit to 65535.
the test was to send a specific icap request that involves filtering
query and get at least one line back and then close the connection be
because if i got any of the data the processing by the icap server was done.
i measured the timestamp before i start the connection and after then
calculate the time between them and report the time only if it's more
then 0.1 secs long less then that is far more then sufficient.
i wrote a two scripts, one is with ruby forks and the other with threads.
i looped over sets of 1000 to 4000 requests for between 30 to 60 secs.
the load then builds up and the connection tracking shows 25000 +
connections on "time_wait".
so the open connections limit was about 4000 and with a "time_wait" of
about 25000+ (my time_wait is 15 sec).
i ran those tests for hours and it worked great.
this is about direct ICAP access.
then i tested from the linux box with Apache benchmark to squid proxy
with the -X option... not intercepted but forward proxy. and it seems
like after about 1000 requests squid wont do icap queries (i have live
log on stdout from the icap server)
If you want some more data i will be happy to give you some .
Eliezer
--
Eliezer Croitoru
https://www1.ngtech.co.il
IT consulting for Nonprofit organizations
eliezer <at> ngtech.co.il