This is a discussion on Apache httpd possible memory leak causing swapping on solaris - help please within the Apache Web Server forums, part of the Web Server and Related Forums category; Hi We are having problems with httpd increasing in memory size until the server begins to swap and then causes ...
|
|||||||
| FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
|
|||
|
Hi
We are having problems with httpd increasing in memory size until the server begins to swap and then causes slow response times. This cures itself when httpd is restarted (obviously not an ideal situation!) The size of each httpd process begins at 4336K on startup ramping up to 64M which is when I believe swapping begins. Any suggestions as to what maybe causing this and how to resolve it would be gratefully received. Regards Mike Apache is running on a 2 cpu Sun 280r with 4Gb OS: Solaris 8 HW 7/03 s28s_hw3wos_05a We are running Apache/2.0.54 with the following compiled in modules: core.c mod_access.c mod_auth.c mod_include.c mod_log_config.c mod_env.c mod_setenvif.c prefork.c http_core.c mod_mime.c mod_status.c mod_autoindex.c mod_asis.c mod_cgi.c mod_negotiation.c mod_dir.c mod_imap.c mod_actions.c mod_userdir.c mod_alias.c mod_so.c and the trimmed version of the httpd.conf is ### Section 1: Global Environment # # The directives in this section affect the overall operation of Apache, # such as the number of concurrent requests it can handle or where it # can find its configuration files. # ServerRoot "/usr/local/apache-2.0.54" <IfModule !mpm_winnt.c> <IfModule !mpm_netware.c> </IfModule> </IfModule> <IfModule !mpm_netware.c> <IfModule !perchild.c> </IfModule> </IfModule> <IfModule !mpm_netware.c> PidFile logs/httpd.pid </IfModule> Timeout 300 KeepAlive On MaxKeepAliveRequests 100 KeepAliveTimeout 15 <IfModule prefork.c> StartServers 5 MinSpareServers 5 MaxSpareServers 15 ServerLimit 1024 MaxClients 1024 MaxRequestsPerChild 3000 </IfModule> <IfModule worker.c> StartServers 2 MaxClients 150 MinSpareThreads 25 MaxSpareThreads 75 ThreadsPerChild 25 MaxRequestsPerChild 0 </IfModule> <IfModule perchild.c> NumServers 5 StartThreads 5 MinSpareThreads 5 MaxSpareThreads 10 MaxThreadsPerChild 20 MaxRequestsPerChild 0 </IfModule> <IfModule mpm_winnt.c> ThreadsPerChild 250 MaxRequestsPerChild 0 </IfModule> <IfModule beos.c> StartThreads 10 MaxClients 50 MaxRequestsPerThread 10000 </IfModule> <IfModule mpm_netware.c> ThreadStackSize 65536 StartThreads 250 MinSpareThreads 25 MaxSpareThreads 250 MaxThreads 1000 MaxRequestsPerChild 0 MaxMemFree 100 </IfModule> <IfModule mpmt_os2.c> StartServers 2 MinSpareThreads 5 MaxSpareThreads 10 MaxRequestsPerChild 0 </IfModule> |
|
|||
|
jonezzy@gmail.com wrote: > Hi > We are having problems with httpd increasing in memory size until the > server > begins to swap and then causes slow response times. > This cures itself when httpd is restarted (obviously not an ideal > situation!) > > The size of each httpd process begins at 4336K on startup ramping up to > 64M > which is when I believe swapping begins. > > Any suggestions as to what maybe causing this and how to resolve it > would be > gratefully received. > > Regards > > Mike > > > Apache is running on a 2 cpu Sun 280r with 4Gb > OS: Solaris 8 HW 7/03 s28s_hw3wos_05a > > We are running Apache/2.0.54 with the following compiled in modules: > core.c > mod_access.c > mod_auth.c > mod_include.c > mod_log_config.c > mod_env.c > mod_setenvif.c > prefork.c > http_core.c > mod_mime.c > mod_status.c > mod_autoindex.c > mod_asis.c > mod_cgi.c > mod_negotiation.c > mod_dir.c > mod_imap.c > mod_actions.c > mod_userdir.c > mod_alias.c > mod_so.c > > and the trimmed version of the httpd.conf is > > ### Section 1: Global Environment > # > # The directives in this section affect the overall operation of > Apache, # > such as the number of concurrent requests it can handle or where it # > can > find its configuration files. > # > > > ServerRoot "/usr/local/apache-2.0.54" > > <IfModule !mpm_winnt.c> > <IfModule !mpm_netware.c> > </IfModule> > </IfModule> > > <IfModule !mpm_netware.c> > <IfModule !perchild.c> > </IfModule> > </IfModule> > > > <IfModule !mpm_netware.c> > PidFile logs/httpd.pid > </IfModule> > > Timeout 300 > > KeepAlive On > > MaxKeepAliveRequests 100 > > KeepAliveTimeout 15 > > > <IfModule prefork.c> > StartServers 5 > MinSpareServers 5 > MaxSpareServers 15 > ServerLimit 1024 > MaxClients 1024 > MaxRequestsPerChild 3000 > </IfModule> > > <IfModule worker.c> > StartServers 2 > MaxClients 150 > MinSpareThreads 25 > MaxSpareThreads 75 > ThreadsPerChild 25 > MaxRequestsPerChild 0 > </IfModule> > > <IfModule perchild.c> > NumServers 5 > StartThreads 5 > MinSpareThreads 5 > MaxSpareThreads 10 > MaxThreadsPerChild 20 > MaxRequestsPerChild 0 > </IfModule> > > <IfModule mpm_winnt.c> > ThreadsPerChild 250 > MaxRequestsPerChild 0 > </IfModule> > > <IfModule beos.c> > StartThreads 10 > MaxClients 50 > MaxRequestsPerThread 10000 > </IfModule> > > <IfModule mpm_netware.c> > ThreadStackSize 65536 > StartThreads 250 > MinSpareThreads 25 > MaxSpareThreads 250 > MaxThreads 1000 > MaxRequestsPerChild 0 > MaxMemFree 100 > </IfModule> > > <IfModule mpmt_os2.c> > StartServers 2 > MinSpareThreads 5 > MaxSpareThreads 10 > MaxRequestsPerChild 0 > </IfModule> i admit to having no experience on solaris whatever, but it seems odd to me that you are using multi processing modules optimised for winnt, beos, os2 and netware. thats all i have to say! |
|
|||
|
I think the last poster has a very valid point oh Chubmeister General.
I recommend we read the Solaris manual asap...... Cheers jonezzy@gmail.com wrote: > Hi > We are having problems with httpd increasing in memory size until the > server > begins to swap and then causes slow response times. > This cures itself when httpd is restarted (obviously not an ideal > situation!) > > The size of each httpd process begins at 4336K on startup ramping up to > 64M > which is when I believe swapping begins. > > Any suggestions as to what maybe causing this and how to resolve it > would be > gratefully received. > > Regards > > Mike > > > Apache is running on a 2 cpu Sun 280r with 4Gb > OS: Solaris 8 HW 7/03 s28s_hw3wos_05a > > We are running Apache/2.0.54 with the following compiled in modules: > core.c > mod_access.c > mod_auth.c > mod_include.c > mod_log_config.c > mod_env.c > mod_setenvif.c > prefork.c > http_core.c > mod_mime.c > mod_status.c > mod_autoindex.c > mod_asis.c > mod_cgi.c > mod_negotiation.c > mod_dir.c > mod_imap.c > mod_actions.c > mod_userdir.c > mod_alias.c > mod_so.c > > and the trimmed version of the httpd.conf is > > ### Section 1: Global Environment > # > # The directives in this section affect the overall operation of > Apache, # > such as the number of concurrent requests it can handle or where it # > can > find its configuration files. > # > > > ServerRoot "/usr/local/apache-2.0.54" > > <IfModule !mpm_winnt.c> > <IfModule !mpm_netware.c> > </IfModule> > </IfModule> > > <IfModule !mpm_netware.c> > <IfModule !perchild.c> > </IfModule> > </IfModule> > > > <IfModule !mpm_netware.c> > PidFile logs/httpd.pid > </IfModule> > > Timeout 300 > > KeepAlive On > > MaxKeepAliveRequests 100 > > KeepAliveTimeout 15 > > > <IfModule prefork.c> > StartServers 5 > MinSpareServers 5 > MaxSpareServers 15 > ServerLimit 1024 > MaxClients 1024 > MaxRequestsPerChild 3000 > </IfModule> > > <IfModule worker.c> > StartServers 2 > MaxClients 150 > MinSpareThreads 25 > MaxSpareThreads 75 > ThreadsPerChild 25 > MaxRequestsPerChild 0 > </IfModule> > > <IfModule perchild.c> > NumServers 5 > StartThreads 5 > MinSpareThreads 5 > MaxSpareThreads 10 > MaxThreadsPerChild 20 > MaxRequestsPerChild 0 > </IfModule> > > <IfModule mpm_winnt.c> > ThreadsPerChild 250 > MaxRequestsPerChild 0 > </IfModule> > > <IfModule beos.c> > StartThreads 10 > MaxClients 50 > MaxRequestsPerThread 10000 > </IfModule> > > <IfModule mpm_netware.c> > ThreadStackSize 65536 > StartThreads 250 > MinSpareThreads 25 > MaxSpareThreads 250 > MaxThreads 1000 > MaxRequestsPerChild 0 > MaxMemFree 100 > </IfModule> > > <IfModule mpmt_os2.c> > StartServers 2 > MinSpareThreads 5 > MaxSpareThreads 10 > MaxRequestsPerChild 0 > </IfModule> |
|
|||
|
"shimmyshack" <matt.farey@gmail.com> schreef in bericht
news:1168975766.437028.17950@m58g2000cwm.googlegro ups.com... >> The size of each httpd process begins at 4336K on startup ramping up to >> 64M which is when I believe swapping begins. >> We are running Apache/2.0.54 with the following compiled in modules: >> core.c >> mod_access.c >> mod_auth.c >> mod_include.c >> mod_log_config.c >> mod_env.c >> mod_setenvif.c >> prefork.c >> http_core.c [snipped] >> Timeout 300 >> KeepAlive On >> MaxKeepAliveRequests 100 >> KeepAliveTimeout 15 >> >> <IfModule prefork.c> >> StartServers 5 >> MinSpareServers 5 >> MaxSpareServers 15 >> ServerLimit 1024 >> MaxClients 1024 >> MaxRequestsPerChild 3000 >> </IfModule> [snip] >> <IfModule mpm_winnt.c> >> ThreadsPerChild 250 >> MaxRequestsPerChild 0 >> </IfModule> >> >> <IfModule beos.c> >> StartThreads 10 >> MaxClients 50 >> MaxRequestsPerThread 10000 >> </IfModule> [snip] > i admit to having no experience on solaris whatever, but it seems odd > to me that you are using multi processing modules optimised for winnt, > beos, os2 and netware. thats all i have to say! > The the config has _conditional_ sections for each mpm. Those modules are muteral exclusive, to me only mpm_prefork seems loaded. So the settings for Wnt, Beos and others are ignored. HansH |
|
|||
|
HansH wrote: > "shimmyshack" <matt.farey@gmail.com> schreef in bericht > news:1168975766.437028.17950@m58g2000cwm.googlegro ups.com... > >> The size of each httpd process begins at 4336K on startup ramping up to > >> 64M which is when I believe swapping begins. > >> We are running Apache/2.0.54 with the following compiled in modules: > >> core.c > >> mod_access.c > >> mod_auth.c > >> mod_include.c > >> mod_log_config.c > >> mod_env.c > >> mod_setenvif.c > >> prefork.c > >> http_core.c > [snipped] > > >> Timeout 300 > >> KeepAlive On > >> MaxKeepAliveRequests 100 > >> KeepAliveTimeout 15 > >> > >> <IfModule prefork.c> > >> StartServers 5 > >> MinSpareServers 5 > >> MaxSpareServers 15 > >> ServerLimit 1024 > >> MaxClients 1024 > >> MaxRequestsPerChild 3000 > >> </IfModule> > [snip] > > >> <IfModule mpm_winnt.c> > >> ThreadsPerChild 250 > >> MaxRequestsPerChild 0 > >> </IfModule> > >> > >> <IfModule beos.c> > >> StartThreads 10 > >> MaxClients 50 > >> MaxRequestsPerThread 10000 > >> </IfModule> > [snip] > > > i admit to having no experience on solaris whatever, but it seems odd > > to me that you are using multi processing modules optimised for winnt, > > beos, os2 and netware. thats all i have to say! > > > The the config has _conditional_ sections for each mpm. Those modules > are muteral exclusive, to me only mpm_prefork seems loaded. So the > settings for Wnt, Beos and others are ignored. > > HansH good point! |