以前この勉強会で紹介したウェブ/メルマガのサーバが、アクセス過多によりトップページが見れなくなっているという報告を受ける。
[Mon Nov 3 15:15:51 2014] [error] [client xxx.xxx.xxx.xxx] (35)Resource temporarily unavailable: couldn't spawn child process: /var/www/docs/pub/index.cgi
default:\
:path=/usr/bin /bin /usr/sbin /sbin /usr/X11R6/bin /usr/local/bin:\
:umask=022:\
:datasize-max=512M:\
:datasize-cur=512M:\
:maxproc-max=256:\
:maxproc-cur=128:\
:openfiles-cur=128:\
:stacksize-cur=4M:\
:localcipher=blowfish,6:\
:ypcipher=old:\
:tc=auth-defaults:\
:tc=auth-ftp-defaults:
# www - resource definition for web processes
#
www:\
- :maxproc=512:\
+ :maxproc-max=384:\
+ :maxproc-cur=384:\
:tc=default:\
設定をチェックした段階では、defaultログインクラスではmaxproc-max, maxproc-curがそれぞれ
指定されているのに対し、wwwログインクラスではmaxproc指定のみのため、プロセス最大数の設定数が
上書きされているかどうか不明だったため、maxproc-max, maxproc-curを用いる設定に書き直した。/var/www/conf/httpd.conf
# It is intended mainly as a brake to keep a runaway server from taking # the system with it as it spirals down... # -MaxClients 256 +MaxClients 192
プロセス数の上限で制限がかかっていると仮定し、httpdのプロセス数を減らすことで 子プロセス(*.cgi)の数を増やせるようにした。
→ 30分ほどで不具合は解消