[Xitami] 50+ simultaneous users...

Ewen McNeill xitami@lists.xitami.org
Thu, 14 Mar 2002 17:20:48 +1300


In message <3.0.6.32.20020313225639.00a08b98@shininglightpro.com>, "Thomas J. Hr
uska" writes:
>Today I have been stress testing Xitami under a very controlled environment
>with a distributed attack server (DAS) and client (DAC) set [....]
>
> [At 10 users log entries are sane]
>10.5.225.202 - - [13/Mar/2002:00:04:01 -0500] "GET /distattack/dist2.cfm
>HTTP/1.1" 200 1119
>10.5.225.202 - - [13/Mar/2002:00:04:03 -0500] "GET /distattack/dist3.cfm
>HTTP/1.1" 200 8
>10.5.225.202 - - [13/Mar/2002:00:04:03 -0500] "GET /distattack/dist1.cfm
>HTTP/1.1" 200 99342
>
>These are the correct file sizes for this.  Now, when I attempt to simulate
>50 simultaneous users, the log file looks like this:
>
>10.5.225.202 - - [13/Mar/2002:20:49:30 -0500] "GET /distattack/dist1.cfm
>HTTP/1.1" 200 2
>10.5.228.37 - - [13/Mar/2002:20:49:30 -0500] "GET /distattack/dist3.cfm
>HTTP/1.1" 200 2

Without having run into this before myself, my hunch is that there's
perhaps some race condition in Xitami between when the temporary files
are read in (from the CGIs), and when the size of the file is recorded.
In which case this would be most obvious when the load on the machine
gets fairly high (and 50 simultaneous users all running CGIs at once
would start to do that).

Is it only the log entries affected?  Or are the results that are sent
back wrong as well?

These sorts of problems are very time consuming to track down (often
debugging is a matter of staring at the source code to try to figure out
what might be causing it, changing something "likely" and trying again).

If anyone else has seen anything similar and/or has any hints about what
triggers it, it'd be useful to know.

Ewen

-- 
Ewen McNeill, Technical Consultant, iMatix Corporation  www.imatix.com