Mod_perl 1.99 spawning processes causing major performance issue

2003-06-09 Thread George Bagley

-8-- Start Bug Report 8--
1. Problem Description:

 Hi

I have ugraded from apache1.3 to Apache2 and I am having a performance
problem with a cgi script.
Hardware
Dell 2550, Dual Proc, 2GB RAM, RedHat Linux 9.0

On Apache 1.3, when I do a ps -ef, I cannot see the cgi script running.
I assume this is because Apache is NOT spawning a separate process to
satisfy the request.

On Apache2, there are hundreds of the cgi scripts running and
performance is roughly half what it was on Apache 1.3

The cgi script in question makes a connection to a mysql database.  

I have had to increase the max number of connections allowed by mysql to
allow for the large number of spawned perl processes attempting to make
a DB connection.

Is there a configuration option to stop this happening?  

I have the following relating to perl in my httpd.conf

# LoadModule foo_module modules/mod_foo.so
#
LoadModule perl_module modules/mod_perl.so
# PerlRequire /usr/local/apache2/2.0.45/conf/startup.pl
PerlModule Apache2

# PerlModule ModPerl::Registry
Location /cgi-bin
AddHandler cgi-script cgi pl
#   AddHandler perl-script .pl
#   PerlResponseHandler Apache::Registry
PerlResponseHandler ModPerl::Registry
PerlOptions +ParseHeaders
AllowOverride None
Options +ExecCGI -Includes
#   SetHandler perl-script
SetHandler cgi-script
/Location


2. Used Components and their Configuration:

*** using lib/Apache/BuildConfig.pm
*** Makefile.PL options:
  MP_AP_PREFIX= /usr/local/apache
  MP_COMPAT_1X= 1
  MP_GENERATE_XS  = 1
  MP_INST_APACHE2 = 1
  MP_LIBNAME  = mod_perl
  MP_USE_DSO  = 1
  MP_USE_STATIC   = 1


*** /usr/local/apache/bin/httpd -V
Server version: Apache/2.0.45
Server built:   Apr 30 2003 17:51:58
Server's Module Magic Number: 20020903:0
Architecture:   32-bit
Server compiled with
 -D APACHE_MPM_DIR=server/mpm/prefork
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -D APR_USE_PROC_PTHREAD_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D HTTPD_ROOT=/usr/local/apache2/2.0.45
 -D SUEXEC_BIN=/usr/local/apache2/2.0.45/bin/suexec
 -D DEFAULT_PIDLOG=logs/httpd.pid
 -D DEFAULT_SCOREBOARD=logs/apache_runtime_status
 -D DEFAULT_LOCKFILE=logs/accept.lock
 -D DEFAULT_ERRORLOG=logs/error_log
 -D AP_TYPES_CONFIG_FILE=conf/mime.types
 -D SERVER_CONFIG_FILE=conf/httpd.conf


*** /usr/bin/perl -V
Summary of my perl5 (revision 5.0 version 8 subversion 0) configuration:
  Platform:
osname=linux, osvers=2.4.20-8smp, archname=i686-linux
uname='linux redeye-lin-01.pajmc.com 2.4.20-8smp #1 smp thu mar 13
17:45:54 est 2003 i686 i686 i386 gnulinux '
config_args='-d -Dprefix=/usr'
hint=recommended, useposix=true, d_sigaction=define
usethreads=undef use5005threads=undef useithreads=undef
usemultiplicity=undef
useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
use64bitint=undef use64bitall=undef uselongdouble=undef
usemymalloc=n, bincompat5005=undef
  Compiler:
cc='cc', ccflags ='-fno-strict-aliasing -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm',
optimize='-O3',
cppflags='-fno-strict-aliasing -I/usr/include/gdbm'
ccversion='', gccversion='3.2.2 20030222 (Red Hat Linux 3.2.2-5)',
gccosandvers=''
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t',
lseeksize=8
alignbytes=4, prototype=define
  Linker and Libraries:
ld='cc', ldflags =' -L/usr/local/lib'
libpth=/usr/local/lib /lib /usr/lib
libs=-lnsl -lgdbm -ldb -ldl -lm -lc -lcrypt -lutil
perllibs=-lnsl -ldl -lm -lc -lcrypt -lutil
libc=/lib/libc-2.3.2.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.3.2'
  Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic'
cccdlflags='-fpic', lddlflags='-shared -L/usr/local/lib'


Characteristics of this binary (from libperl):
  Compile-time options: USE_LARGE_FILES
  Built under linux
  Compiled at Apr 30 2003 17:16:30
  %ENV:
PERL_LWP_USE_HTTP_10=1
  @INC:
/usr/lib/perl5/5.8.0/i686-linux
/usr/lib/perl5/5.8.0
/usr/lib/perl5/site_perl/5.8.0/i686-linux
/usr/lib/perl5/site_perl/5.8.0
/usr/lib/perl5/site_perl

3. This is the core dump trace: (if you get a core dump):

 I am not getting an ERROR.  Just a major performance issue.

This report was generated by t/REPORT on Mon Jun  9 20:59:06 2003 GMT.

-8-- End Bug Report --8--

Note: Complete the rest of the details and post this bug report to
dev at perl.apache.org. To subscribe to the list send an empty
email to [EMAIL PROTECTED]



Re: Performance issue

2002-08-28 Thread Doug MacEachern

On Tue, 20 Aug 2002, Pierre Laplante wrote:

 Does any body has performance data regarding
 
 mod_perl 2.0 vs mod_perl 1.0?

i have not done any benchmarking, nor have i seen number from anybody 
else.  maybe josh chamas will add 2.0 to his benchmark matrix soon?
 
 What is the stability of mod_perl 2.0? Any body using it in production?

covalent has customers using mod_perl-2.0 in production with the prefork 
MPM without any problems.




Performance issue

2002-08-20 Thread Pierre Laplante

Does any body has performance data regarding

mod_perl 2.0 vs mod_perl 1.0?

What is the stability of mod_perl 2.0? Any body using it in production?

thanks.