[dev] ongoing performance problem, please help

Sebastian Birnbach birnbacs at gmail.com
Wed Jun 10 13:26:01 UTC 2015


All,

as I could not solve my performance problems with a running horde
installation I finally decided to do a reinstall on a fresh copy of BSD,
i.e. a blank new jail.

But even though I compiled everything on the host itself and installed only
the very necessary I find horde to take more than 5 seconds to answer every
HTTP requrest.


This is how my system looks like:

uname -a
FreeBSD max 9.2-RELEASE-p4 FreeBSD 9.2-RELEASE-p4 #0 r264973M: Sun Apr 27
13:37:49 CEST 2014
root at dev.nas4free.org:/usr/obj/nas4free/usr/src/sys/NAS4FREE-amd64
amd64

httpd -v
Server version: Apache/2.4.12 (FreeBSD)
Server built:   Jun  5 2015 15:18:03

mysql> show variables LIKE "%version%";
+-------------------------+---------------------+
| Variable_name           | Value               |
+-------------------------+---------------------+
| innodb_version          | 5.6.24              |
| protocol_version        | 10                  |
| slave_type_conversions  |                     |
| version                 | 5.6.24              |
| version_comment         | Source distribution |
| version_compile_machine | amd64               |
| version_compile_os      | FreeBSD9.2          |
+-------------------------+---------------------+
7 rows in set (0.00 sec)

* php --version
PHP 5.5.25 (cli) (built: Jun  5 2015 16:10:47)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies
    with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2015, by Zend
Technologies


According to horde's test.php everything is fine, nothing missing, nothing
installed that is not required. I don't even have applications in horde
yet. Apache seems fast on static HTML, phpmyadmin seems fast, too.


The 5 seconds delay is reflected in apache's access log, look at the
timestamps of the first two lines:

192.168.0.106 - - [10/Jun/2015:15:17:43 +0200] "GET /services/portal/
HTTP/1.1" 200 7876
192.168.0.106 - - [10/Jun/2015:15:17:48 +0200] "GET
/js/prototype.js?v=fe1856783311ac8a9e59ee2b3928a57b HTTP/1.1" 304 -
192.168.0.106 - - [10/Jun/2015:15:17:48 +0200] "GET
/js/hordecore.js?v=fe1856783311ac8a9e59ee2b3928a57b HTTP/1.1" 304 -
192.168.0.106 - - [10/Jun/2015:15:17:48 +0200] "GET
/js/horde.js?v=fe1856783311ac8a9e59ee2b3928a57b HTTP/1.1" 304 -
192.168.0.106 - - [10/Jun/2015:15:17:48 +0200] "GET
/js/date/de-DE.js?v=fe1856783311ac8a9e59ee2b3928a57b HTTP/1.1" 304 -
192.168.0.106 - - [10/Jun/2015:15:17:48 +0200] "GET
/js/hordeblocks.js?v=fe1856783311ac8a9e59ee2b3928a57b HTTP/1.1" 304 -
192.168.0.106 - - [10/Jun/2015:15:17:48 +0200] "GET
/js/date/date.js?v=fe1856783311ac8a9e59ee2b3928a57b HTTP/1.1" 304 -
192.168.0.106 - - [10/Jun/2015:15:17:48 +0200] "GET
/js/topbar.js?v=fe1856783311ac8a9e59ee2b3928a57b HTTP/1.1" 304 -
192.168.0.106 - - [10/Jun/2015:15:17:48 +0200] "GET
/js/popup.js?v=fe1856783311ac8a9e59ee2b3928a57b HTTP/1.1" 304 -
192.168.0.106 - - [10/Jun/2015:15:17:48 +0200] "GET
/js/accesskeys.js?v=fe1856783311ac8a9e59ee2b3928a57b HTTP/1.1" 304 -
192.168.0.106 - - [10/Jun/2015:15:17:48 +0200] "GET
/js/scriptaculous/sound.js?v=fe1856783311ac8a9e59ee2b3928a57b HTTP/1.1" 304
-
192.168.0.106 - - [10/Jun/2015:15:17:48 +0200] "GET
/js/growler.js?v=fe1856783311ac8a9e59ee2b3928a57b HTTP/1.1" 304 -
192.168.0.106 - - [10/Jun/2015:15:17:48 +0200] "GET
/js/scriptaculous/effects.js?v=fe1856783311ac8a9e59ee2b3928a57b HTTP/1.1"
304 -
192.168.0.181 - - [10/Jun/2015:15:17:53 +0200] "OPTIONS * HTTP/1.0" 200 -

Also note the extra 5 seconds between the last two lines.


The 'top' utility does not give me any clue either, there is no CPU
intensive process around. httpd peaks briefly to ~ 13% when it gives an
answer - after the 5 secs delay - and that's all.

==

My first guess: bad mySQL driver. But PDO is just as slow as mySQLi.

Second guess: invoking PHP5.5 from the webserver takes long. But how do you
stat that? And how to remedy?


Any ideas anyone?

Kind regards

  Sebastian


More information about the dev mailing list