Also das gleichzeitige Beenden ist es wohl nicht - hier ist zB mal ein Auszug, wie das üblicherweise läuft:
[...]
[Mon Nov 04 10:27:48 2013] [debug] fcgid_pm_main.c(357): mod_fcgid: gracefully terminated 1 processes
[Mon Nov 04 10:29:53 2013] [debug] fcgid_pm_main.c(357): mod_fcgid: gracefully terminated 3 processes
[Mon Nov 04 10:31:51 2013] [debug] fcgid_pm_main.c(357): mod_fcgid: gracefully terminated 3 processes
[Mon Nov 04 10:33:55 2013] [debug] fcgid_pm_main.c(357): mod_fcgid: gracefully terminated 4 processes
[Mon Nov 04 10:37:57 2013] [debug] fcgid_pm_main.c(357): mod_fcgid: gracefully terminated 4 processes
[...]
Das Problem trat zuletzt auf am "06/Nov/2013:20:00:21" - der letzte geloggt Zugriff war ein 404 auf ein .gif. Es folgen dann noch ca. 5,5min Einträge im Debug-Log, die mit Folgendem enden:
[Wed Nov 06 20:03:42 2013] [debug] fcgid_pm_main.c(357): mod_fcgid: gracefully terminated 1 processes
[Wed Nov 06 20:05:48 2013] [debug] fcgid_pm_main.c(357): mod_fcgid: gracefully terminated 4 processes
In der Zwischenzeit findet man nur solche Sachen:
[Wed Nov 06 20:02:40 2013] [debug] proxy_util.c(1941): proxy: initialized single connection worker 7 in child 15894 for (*)
[Wed Nov 06 20:02:40 2013] [debug] proxy_util.c(1825): proxy: grabbed scoreboard slot 6 in child 15894 for worker
http://localhost/stats/xxx.de
[Wed Nov 06 20:02:40 2013] [debug] proxy_util.c(1844): proxy: worker
http://localhost/stats/xxx.de already initialized
Oder zlib-compressions:
[Wed Nov 06 20:03:31 2013] [debug] mod_deflate.c(615): [client xx.xx.xx.xx] Zlib: Compressed 18467 to 4913 : URL /xxx/js/lightbox.js, referer:
http://www.xxx.de/xxx/xxx/xxx_index.php
Gerade sehe ich das hier noch, was offenbar die Erhöhung der Prozesse beschreibt:
Nov 06 20:00:00 2013] [info] server seems busy, (you may need to increase StartServers, or Min/MaxSpareServers), spawning 8 children, there are 0 idle, and 18 total children
[Wed Nov 06 20:01:28 2013] [info] server seems busy, (you may need to increase StartServers, or Min/MaxSpareServers), spawning 8 children, there are 1 idle, and 41 total children
[Wed Nov 06 20:01:44 2013] [info] server seems busy, (you may need to increase StartServers, or Min/MaxSpareServers), spawning 8 children, there are 2 idle, and 54 total children
[Wed Nov 06 20:02:09 2013] [info] server seems busy, (you may need to increase StartServers, or Min/MaxSpareServers), spawning 8 children, there are 0 idle, and 71 total children
[Wed Nov 06 20:02:19 2013] [info] server seems busy, (you may need to increase StartServers, or Min/MaxSpareServers), spawning 8 children, there are 0 idle, and 93 total children
[Wed Nov 06 20:02:41 2013] [info] server seems busy, (you may need to increase StartServers, or Min/MaxSpareServers), spawning 8 children, there are 2 idle, and 123 total children
Wie gesagt: im regulären Log sieht man zu dem Zeitpunkt schon gar nix mehr.
Apache ist mit folgenden Flags kompiliert:
www-servers/apache-2.2.25:2 USE="ssl suexec -debug -doc -ldap (-selinux) -static -threads" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgid dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http reqtimeout rewrite setenvif speling status unique_id userdir usertrack vhost_alias -asis -authn_alias -cern_meta -cgi -charset_lite -dumpio -log_forensic -proxy_ftp -proxy_scgi -substitute -version" APACHE2_MPMS="-event -itk -peruser -prefork -worker" 0 kB
mpm sieht so aus:
<IfModule mpm_prefork_module>
StartServers 5
MinSpareServers 5
MaxSpareServers 10
MaxClients 150
MaxRequestsPerChild 5000
</IfModule>
<IfModule mpm_worker_module>
StartServers 2
MinSpareThreads 25
MaxSpareThreads 75
ThreadLimit 64
ThreadsPerChild 25
MaxClients 150
MaxRequestsPerChild 0
</IfModule>
<IfModule mpm_event_module>
StartServers 2
MinSpareThreads 25
MaxSpareThreads 75
ThreadLimit 64
ThreadsPerChild 25
MaxClients 150
MaxRequestsPerChild 0
</IfModule>
fcgid:
AddHandler fcgid-script .php .php5
SocketPath /var/spool/fcgidsock
FcgidProcessTableFile /var/spool/fcgidsock/processtable
IPCConnectTimeout 20
FcgidMaxRequestsPerProcess 1000
FcgidPassHeader AUTHORIZATION
FcgidBusyTimeout 300
FcgidIOTimeout 300
FcgidMaxRequestLen 104857600
FcgidMaxProcesses 200
FcgidMaxProcessesPerClass 20
FcgidMinProcessesPerClass 0
Der Start erfolgt dann pro Domain über einen Wrapper so:
<IfModule fcgid_module>
<Directory /var/www/virtual/xxx.de/htdocs>
FCGIWrapper /var/www/fcgi/xxx.de/php5-fcgid-starter .php
Options +ExecCGI
</Directory>
<Directory "/var/www/fcgi/xxx.de">
AllowOverride None
Options +ExecCGI MultiViews -Indexes
Order allow,deny
Allow from all
</Directory>
</IfModule>
Das Compiling ist ohne besondere Flags:
CFLAGS="-O2 -pipe"
CXXFLAGS="${CFLAGS}"
CHOST="x86_64-pc-linux-gnu"
=> Reicht dir das? :D