[horde] memcache session tracking
Andrew Morgan
morgan at orst.edu
Tue Oct 14 17:29:26 UTC 2008
On Mon, 13 Oct 2008, Michael M Slusarz wrote:
> Quoting Michael M Slusarz <slusarz at horde.org>:
>
>> Quoting Kevin Konowalec <webadmin at ualberta.ca>:
>>
>>> If that is the same session tracking that you can get through the admin
>>> interface I've tried it. It THRILLED me to finally be able to see who was
>>> logged on at any given time since we had that functionality with
>>> mySQL-based sessions but lost it when we went to Memcache.
>>>
>>> Unfortunately as soon as I put the machines into production and under load
>>> it becomes useless. The web page times out before showing me anything.
>>> So I've stopped playing with it - doesn't seem to work well with large
>>> installations like ours (70,000+ users).
>>
>> Try these two patches and see if it helps at all:
>> http://lists.horde.org/archives/cvs/Week-of-Mon-20081013/084284.html
>> http://lists.horde.org/archives/cvs/Week-of-Mon-20081013/084286.html
>
> This also:
> http://lists.horde.org/archives/cvs/Week-of-Mon-20081013/084287.html
I've got this on my test installation and it works fine. I might be able
to deploy it to our production site this weekend. I'll let you know how
it goes.
Should I merge the change in v1.24 of SessionHandler/memcache.php as well?
I was looking at the following code in SessionHandler/memcache.php:
function _trackGC()
{
$this->_memcache->lock($this->_trackID);
$ids = $this->_memcache->get($this->_trackID);
if (empty($ids)) {
return;
}
Shouldn't it call unlock in the "if (empty($ids))" block? If the tracking
array is empty (but exists), then a lock will be held on it unnecessarily.
Thanks,
Andy
More information about the horde
mailing list