|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2011-11-11 21:21 UTC] jwprice at georgiasouthern dot edu
Description:
------------
During a busy time over 600 httpd processes on the webserver and oracle database
cpu load over 88. The cpu load on each httpd process climbs to 3 and 4 % over
loading our server forcing cpuloads of > 200 on the webserver. After load on the
database clears usually in about 15 min, the httpd process never clear their cpu
usage even after a week of no activity. The cpu load on the httpd processes
usally ranges from .4 to 0%. The cpu load problem on the webserver is definitely
related to slowness on the oracle database side, but what concerns me is the
apache server never clears itself. I suspect there is some issue with the oci
functionality.
I'm reporting this before upgrading to the latest version because i don't see
any fixes related. We are using php version 5.3.4. Configure script below.
Home=/portal
ApacheStdName=httpd-
ApacheVer=2.2.17
PHPVer=5.3.4
PHPStdName=php-
OracleClientHome=/oraclient/ora920
MysqlHome=/usr/local/mysql
ModSSLStdName=mod_ssl-
ModSSLVer=2.8.22-1.3.33
cd ${Home}/${PHPStdName}${PHPVer}
./configure \
--prefix=${Home}/local \
--with-apxs2=${Home}/server/bin/apxs \
--with-gettext \
--enable-ftp \
--with-openssl=/usr/local/ssl \
--with-mysql=${MysqlHome} \
--with-pear=${HOME}/pear \
--enable-cli \
--disable-cgi \
--with-curl \
--with-mcrypt=/usr/local \
--with-zlib \
--with-zlib-dir=/usr/local \
--with-jpeg-dir=/usr/local \
--with-png-dir=/usr/local \
--with-xpm-dir=/usr/local \
--with-freetype-dir=/usr/local \
--enable-gd-native-ttf \
--with-ttf=/usr/local \
--with-gd \
--with-ldap=/usr/local \
--with-oci8=${OracleClientHome} \
--with-config-file-path=${Home}/etc
Test script:
---------------
We use
oci_connect
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Sat Oct 25 13:00:01 2025 UTC |
cpu load was measured with uptime and prstat. Note this is a 4 core 16 thread 16Gb SunFire T2000. Load is normally between 3 and 5, between 350 and 550 process. During the busy time load was > 200 and stayed there even after the load on the database was gone. I would say that the httpd processes were spinning at 3 to 4% of cpu each normally this is a lot lower .1%. They are not being cycled. We are using an older version of the oracle client we will definitely try to update it. We have since updated to apache 2.2.21 and php- 5.3.8. We will have another high load Mar 5th. We've stayed away from persistent connections because it caused a high load on the database. We will look into the performance tips you mentioned. Apache was configured and compiled with the following: ./configure --enable-modules=most \ --prefix=${Home}/server \ --enable-mods-shared=most \ --enable-proxy \ --enable-proxy-http \ --enable-so