The zoop session handling is layered on top of the php session
handling. Every time a script closes that uses php sessions it uses a
probability function to determine whether or not to do garbage
collection. Here the the documentation for the relevant runtime
config options: http://us2.php.net/manual/en/
session.configuration.php. Especially look at session.gc_probability,
session.gc_divisor, session.gc_maxlifetime. The defaults give you a
1% chance that garbage collection will be invoked upon completion of
any given script and a timeout of 24 minutes. I'm pretty sure that
you can set any of those with init_set (http://us2.php.net/ini_set) so
you can change them on a per app basis instead of system wide if you
want.
If you are just testing you would likely build up a lot of sessions
before it invokes garbage collection. Try switching gc_probability/
gc_divisor to be the same (so a probability of 100%) and see if that
causes them to be cleaned up on every script. If not maybe there is a
problem with the my garbage collector. It should be working though.
Check out the very last method (gc) in this file: http://code.google.com/p/zoop/source/browse/trunk/framework/session/SessionDb.php
to see exactly how I am doing the garbage collection.
Thanks,
Rick
P.S. I am just getting into things again post-surgery so if there was
anything you asked before I may have lost track of it so feel free to
ask again.