I have a modper/DBI/Oracle8i/solaris2.7 site and I'm having performance
problem because I have too many apache processes that are too big. The
machine grinds to a crawl for a normal amount of users.
The problem is that at server startup I immediately have a bunch of apache
process that are already using swap, but I have 4GB of RAM. What's going
on??
See the output of top below.
It looks like the apache processes are not using all the available memory.
>From top, RES gets lower than SIZE, why?
Should I adjust RLimitMEM, and if so, how to I determine the correct value?
Any help is greatly appreciated.
********** Output of top *************
load averages: 0.06, 0.07, 0.07
18:11:14
120 processes: 119 sleeping, 1 on cpu
CPU states: 94.7% idle, 0.0% user, 5.0% kernel, 0.3% iowait, 0.0% swap
Memory: 4096M real, 2834M free, 1235M swap in use, 6252M swap free
PID USERNAME THR PRI NICE SIZE RES STATE TIME CPU COMMAND
501 oracle 1 0 0 2480K 2048K sleep 6:14 2.02% top
1511 ffinstad 1 0 0 2440K 2064K cpu2 0:01 1.92% top
906 nobody 9 58 0 46M 22M sleep 0:12 0.07% beans_adapter_e
1501 ffinstad 1 48 0 1824K 1344K sleep 0:00 0.06% ksh
393 oracle 1 58 0 374M 347M sleep 0:01 0.02% oracle
163 root 5 58 0 2848K 2280K sleep 0:00 0.02% automountd
114 root 6 50 0 2288K 1440K sleep 0:00 0.01% keyserv
196 root 8 50 0 2768K 2328K sleep 0:00 0.01% nscd
1499 root 1 38 0 1760K 1368K sleep 0:00 0.00% in.telnetd
1163 nobody 4 48 0 33M 21M sleep 0:04 0.00% httpsd
1162 nobody 4 58 0 33M 20M sleep 0:04 0.00% httpsd
1232 oracle 1 2 0 374M 351M sleep 0:03 0.00% oracle
1153 nobody 4 50 0 33M 21M sleep 0:03 0.00% httpsd
1235 oracle 1 52 0 374M 352M sleep 0:03 0.00% oracle
1164 nobody 4 58 0 33M 21M sleep 0:03 0.00% httpsd
************** perl5 configuration ***************
Embedded Perl version 5.00503 for Stronghold/2.4.2 Apache/1.3.6 C2NetEU/2412
(Unix) mod_perl/1.21
Apache::DBI 0.87
DBI 1.13
DBD::Oracle 1.06
Summary of my perl5 (5.0 patchlevel 5 subversion 3) configuration:
Platform:
osname=solaris, osvers=2.7, archname=sun4-solaris
uname='sunos cabinet 5.7 generic_106541-05 sun4u sparc sunw,ultra-5_10 '
hint=recommended, useposix=true, d_sigaction=define
usethreads=undef useperlio=undef d_sfio=undef
Compiler:
cc='gcc', optimize='-O', gccversion=2.8.1
cppflags='-I/usr/local/include'
ccflags ='-I/usr/local/include'
stdchar='char', d_stdstdio=define, usevfork=false
intsize=4, longsize=4, ptrsize=4, doublesize=8
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
alignbytes=8, usemymalloc=y, prototype=define
Linker and Libraries:
ld='gcc', ldflags =' -L/usr/local/lib'
libpth=/usr/local/lib /lib /usr/lib /usr/ccs/lib
libs=-lsocket -lnsl -ldl -lm -lc -lcrypt
libc=/lib/libc.so, so=so, useshrplib=false, libperl=libperl.a
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags=' '
cccdlflags='-fPIC', lddlflags='-G -L/usr/local/lib'