Re: Performance Tuning -- How do I determine the correct value forRLimitMEM?

2001-02-14 Thread Blue Lang

On Wed, 14 Feb 2001, Franco Finstad wrote:

 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??

i'm not an engineer, but i've run several sites on what i assume it
roughly the same equipment.

 It looks like the apache processes are not using all the available memory.

you don't want _anything_ using all available memory. period. you don't
want it coming over 60 or 70% total use, if possible. you must allow for
spikes.

 From top, RES gets lower than SIZE, why?
 Should I adjust RLimitMEM, and if so, how to I determine the correct value?

res is always lower than size. size is the amount of virtual mem
allocated, res is the amount of physical ram in use.

   393 oracle 1  580  374M  347M sleep   0:01  0.02% oracle

this is nuts.. 350MB oracle proccesses? what's your SGA set at? how many
instances are you running?

you need to get the web servers off of this box, or figure out what is up
with oracle.

try running ps -el to see what's actually been swapped. (the 'F' flag will
be set to 20, i think)

-- 
   Blue Lang, Unix Voodoo Priesthttp://www.gator.net/~blue
   202 Ashe Ave, Apt 3, Raleigh, NC.  919 835 1540
"A computer is a state machine. Threads are for people who can't program
 state machines." - Alan Cox, From Larry McVoy's quote page




Re: Performance Tuning -- How do I determine the correct value forRLimitMEM?

2001-02-14 Thread Vasily Petrushin

On Wed, 14 Feb 2001, Franco Finstad wrote:

 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, 

It's ok on Solaris.

 but I have 4GB of RAM. What's going
 on??

Try 
MaxRequestsPerChild from 50 to 100
in httpd.conf
This because mod_perl is not freeing memory after serve any request.

 
 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   TIMECPU COMMAND
   501 oracle 1   00 2480K 2048K sleep   6:14  2.02% top
  1511 ffinstad   1   00 2440K 2064K cpu20:01  1.92% top
   906 nobody 9  580   46M   22M sleep   0:12  0.07% beans_adapter_e
  1501 ffinstad   1  480 1824K 1344K sleep   0:00  0.06% ksh
   393 oracle 1  580  374M  347M sleep   0:01  0.02% oracle
   163 root   5  580 2848K 2280K sleep   0:00  0.02% automountd
   114 root   6  500 2288K 1440K sleep   0:00  0.01% keyserv
   196 root   8  500 2768K 2328K sleep   0:00  0.01% nscd
  1499 root   1  380 1760K 1368K sleep   0:00  0.00% in.telnetd
  1163 nobody 4  480   33M   21M sleep   0:04  0.00% httpsd
  1162 nobody 4  580   33M   20M sleep   0:04  0.00% httpsd
  1232 oracle 1   20  374M  351M sleep   0:03  0.00% oracle
  1153 nobody 4  500   33M   21M sleep   0:03  0.00% httpsd
  1235 oracle 1  520  374M  352M sleep   0:03  0.00% oracle
  1164 nobody 4  580   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'
 
 
 
 
 

Vasily Petrushin
+7 (095) 2508363
http://www.interfax.ru
mailto:[EMAIL PROTECTED]