[dev] [solved] slow pageload before authentication

Michael Menge michael.menge at zdv.uni-tuebingen.de
Tue Jun 23 14:03:06 UTC 2015


Quoting Michael Menge <michael.menge at zdv.uni-tuebingen.de>:

> Hi,
>
> and thanks Thomas
>
> Quoting Thomas Jarosch <thomas.jarosch at intra2net.com>:
>
>> Hi Michael,
>>
>> On 06/19/2015 03:32 PM, Michael Menge wrote:
>>> after changing our production system to horde 5.2.5 (from horde 3)  
>>> we discovered a strange
>>> delay in loading the initial page (/ which redirects to login.php)  
>>> Most of the time the page
>>> loads in less than a second, but occasional it takes between 30  
>>> and 60 seconds.
>>>
>>> We discovered that the delay is on the server side, because the  
>>> delay is visible in
>>> the apache access logs. Setting the horde loglevel to debug we  
>>> found for an delayed load of the initial
>>> page the corrosponding pid produced over 32000 lines of
>>>
>>> HORDE [horde] Horde_HashTable_Predis: Retrieved keys  
>>> (djmss6knc7qpr31c9batplpr31) [pid 31663 on line 233 of  
>>> "/usr/share/pear/Horde/HashTable/Base.php"]
>>>
>>> for different keys. Is this number of keys expected behavior?
>>> Any ideas what could cause this delay?
>>
>> two things I would try:
>>
>> - Run without any optimizer like APC or Predis.
>>
>>  This will involve a configuration change,
>>  so back up conf.php first.
>>
>
> As we use a loadbalancer setup, we could not disable predis for sessions.
>
>
>>  Do is still occur?
>>
>> - Install something like xdebug and try to get a call
>>  trace that shows the excessive Horde_HashTable_Predis invocation.
>>
>>  Then we can go back in the call tree and see what's causing this.
>>
>>
>> Reading your email again, it could also be some
>> kind of garbage collection that's running every XX page calls.
>> The xdebug trace might help.
>
>
> I installed xdebug and created a profile for a long running process.
> It is the garbage collection.  
> Horde_SessionHandler_Storage_Hashtable->trackGC called
> 33.560 x Horde_SessionHandler_Storage_Hashtable->exists
>
> Is there a way do disable Horde Session GC, and run the GC manually by cron?
> Setting  session.gc_probability=0 in php.ini didn't help.
>
>

We had forgotten to disable $conf['sessionhandler']['pa$rams']['track'].
It seams trackGC is only called if  
conf['sessionhandler']['params']['track'] is enabled



>
>
> --------------------------------------------------------------------------------
> M.Menge                                Tel.: (49) 7071/29-70316
> Universität Tübingen                   Fax.: (49) 7071/29-5912
> Zentrum für Datenverarbeitung          mail:  
> michael.menge at zdv.uni-tuebingen.de
> Wächterstraße 76
> 72074 Tübingen
>
> -- 
> dev mailing list
> Frequently Asked Questions: http://wiki.horde.org/FAQ
> To unsubscribe, mail: dev-unsubscribe at lists.horde.org



--------------------------------------------------------------------------------
M.Menge                                Tel.: (49) 7071/29-70316
Universität Tübingen                   Fax.: (49) 7071/29-5912
Zentrum für Datenverarbeitung          mail:  
michael.menge at zdv.uni-tuebingen.de
Wächterstraße 76
72074 Tübingen



More information about the dev mailing list