温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

巡检502错误并重启php-fpm服务

发布时间:2020-06-21 22:25:20 来源:网络 阅读:449 作者:蒋将将 栏目:开发技术

报错问题一般如下两点

 1、php-fpm相关配置问题

 2、资源耗尽问题

在此

编写如下脚本进行巡检,当有问题自动检查并重启php-fpm假死状态释放资源

# vim php-fpm_restart.sh

#!/bin/sh

#变量初始化

process="php-fpm"

startservice="systemctl start php-fpm.service"

down=0

#判断语句

while true

do

#获取http状态码

code=$(curl -H "Host:www.jiangjj.com" -m 5 -L -s -w %{http_code} http://127.0.0.1 -o /dev/null)

#判断状态码返回000或大于等于500时,计数故障到down变量

if [ $code -eq 000 -o $code -ge 500 ];then

((down++));

else

break

fi

#等待5s

sleep 5

#判断是否检查三次都标记为故障

if [ $down -ge 3 ];then

if [ "$(find /tmp/${process}_restart -mmin -3)" == ""];then

#获取进程名对应的所有pid

pids=$(ps -aux | grep ${process} | grep -v "grep" | awk '{print $2}')

#依次对所有pid执行kill命令

for jiangjj in $pids;do

kill -9 $jiangjj

kill -9 $jiangjj

done

#kill完pid后启动服务

$startservice

echo "$(date) Return code $code,${process} had been restarted" >> /tmp/${process}_restart

else

echo "$(date) ${process} not yet recobery,As it hsd been restarted in 2 minutes.so this time ignore."

fi

break

fi

done


#授权

# chmod u+x php-fpm_restart.sh


#执行crontab定时任务即可

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI