小型vps nginx+php-cgi 内存过大应急预案
[文章作者:陈毓端 若转载请标注原文链接:http://www.woyuw.com/?p=783]
朋友买了台vps 内存在512M ,有时候多个cgi进程是的内存使用过大 导致502错误
除了基本的优化外 ,这里就不写了,网上一堆。
应急预案脚本
#!/bin/sh
function fastCgiRestart(){
killall -9 php-cgi
/usr/local/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -u www -f /usr/local/php5/bin/php-cgi
}
function startNginx(){
/usr/local/nginx/sbin/nginx -t
}
while true
do
echo `free | awk ‘{print $3}’` | awk ‘{print $2}’ >a
usemem=`cat a`
echo `free | awk ‘{print $2}’` | awk ‘{print $2}’ >b
countmem=`cat b`
usememcache=”$usemem”
sysmemcache=”$countmem”
if [ $usememcache -gt 511111 ] ; then
fastCgiRestart
startNginx
else
echo ’sys is ok’
fi
sleep 5
done
注释:
# if [ $usememcache -gt 511111 ] ; then 表示但内存达到511111 时候重启php-cgi具体的参数可以依照内存的大小而定
总之这个《应急预案》是主动出击,保证站点的运行。
Categories: linux
