#19335 [Csd]: Garbage collection performance issue. gc_probability should be float not int

From: Date: Thu, 03 Oct 2002 22:45:56 +0000
Subject: #19335 [Csd]: Garbage collection performance issue. gc_probability should be float not int
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-21415@lists.php.net to get a copy of this message
ID: 19335 Updated by: sas@php.net Reported By: tomek@allegro.pl Status: Closed Bug Type: Session related Operating System: FreeBSD 4.5 PHP Version: 4.2.2 New Comment: An additional note -- I've been aware of this performance issue for a long time and usually simply relied on find|xargs rm. However, PHP 4.3 and later support session.gc_dividend now which lets you define arbitrary probabilities for kicking of the GC process. Previous Comments: ------------------------------------------------------------------------ [2002-09-10 14:58:42] derick@php.net closing then. You might also want to try msession for this: http://www.php.net/manual/en/ref.msession.php http://www.mohawksoft.com/phoenix/msession.html Derick ------------------------------------------------------------------------ [2002-09-10 14:54:35] tomek@allegro.pl Thank you for the tip. It solves my problem. However I think using shm would be problematic when running on multiple hosts using mod_backhand - I think session files over NFS are the only way to go then, so maybe this change would be useful. ------------------------------------------------------------------------ [2002-09-10 10:39:55] sniper@php.net Have you thought of using some other session.save_handler than files? For example shared memory? (--with-mm) ------------------------------------------------------------------------ [2002-09-10 09:58:44] tomek@allegro.pl To clarify a bit: The server dies because of slow operations on directories with large amounts of files. If garbage collection is started by every 100th Hit (which means often in highly trafficked websites), load jumps to 100s... ------------------------------------------------------------------------ [2002-09-10 09:47:54] tomek@allegro.pl We're running a rather large PHP site (97 million pageviews in August). We try to minimize the number of open sessions by using session_start only if required. However we still have ~25,000 open sessions peak. With gc_probability set to 1, our server dies. Currently I solved it by setting gc_probability to 0 and running find -amin +10 -delete from cron, however it would be nice if gc_probability could have a float value (say 0.1 or 0.01). Regards, Tomek ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=19335&edit=1

« previous php.bugs (#21415) next »