[pmwiki-users] Help! Performance problem after server move
Joachim Durchholz
jo at durchholz.org
Tue Apr 4 16:19:33 CDT 2006
Patrick R. Michaud schrieb:
> I'm fairly
> convinced it's not directly PmWiki's fault, because it happens very
> inconsistently. For more details -- see my message at
> http://www.pmichaud.com/pipermail/pmwiki-users/2006-March/025470.html.
Now that "happens very inconsistently" triggered something in my mind.
I know of one thing that happens at random intervals in PHP: session GC.
With the standard settings, it is run with a 1% probability - very
difficult to reproduce any problems with that.
My hypothesis is that PHP places all the session files in one directory
(usually between 670 and 720 on my system, which isn't too heavily
loaded). Now when GC runs, it has to stat all the files and delete those
that are too old - if the file system is slow with large directories,
this can indeed take a noticeable amount of time.
To test, one can switch off session GC and see whether the erratic
behavior vanishes. Expect PHP to slowly degrade, as the number of
session files will increase, and the file system will take longer and
longer to find and open a file.
(This test is probably best set up on an idle spare server, and hammered
away with new sessions. E.g. set up a client to request pages via wget
in a tight loop, and monitor session file count on the server and wget
latencies on the client.)
If that's indeed the cause, the best way to get rid of the problem would
be to use a SQL-based session manager. (Or to switch to reiserfs, which
is - among other things - a database engine for file names.)
Regards,
Jo
More information about the pmwiki-users
mailing list