找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 44|回复: 4

有没有检测负载的脚本自动重启APACHE

[复制链接]

337

主题

1470

回帖

4011

积分

论坛元老

积分
4011
发表于 2013-6-9 22:24:55 | 显示全部楼层 |阅读模式
RT.. 负载超过 设置值 就重启APACHE 设定值不会导致VPS宕机
回复

使用道具 举报

31

主题

91

回帖

281

积分

中级会员

积分
281
发表于 2013-6-9 22:25:32 | 显示全部楼层
easy,楼下来。
回复

使用道具 举报

6

主题

85

回帖

192

积分

注册会员

积分
192
发表于 2013-6-9 22:27:54 | 显示全部楼层
楼下你行的
回复

使用道具 举报

8

主题

298

回帖

668

积分

高级会员

积分
668
发表于 2013-6-9 22:43:14 | 显示全部楼层
本帖最后由 nomaka 于 2013-6-9 22:46 编辑

cat /proc/loadavg | awk '{print $1}'  然后对比一下负载 大于则  service httpd restart 写在 crontab ?
回复

使用道具 举报

103

主题

4306

回帖

8979

积分

论坛元老

积分
8979
发表于 2013-6-9 23:03:35 | 显示全部楼层
#!/bin/sh
TOP_SYS_LOAD_NUM=设定负载值
SYS_LOAD_NUM=`uptime | awk '{print $(NF-2)}' | sed 's/,//'`

echo $(date +"%y-%m-%d") `uptime`
if [ `echo "$TOP_SYS_LOAD_NUM < $SYS_LOAD_NUM"|bc` -eq 1 ]  
then  
    echo "#0#" $(date +"%y-%m-%d %H:%M:%S") "pkill httpd" `ps -ef | grep httpd | wc -l`
    service httpd stop
    pkill httpd
    pkill php-cgi
    sleep 10  
    for i in 1 2 3  
    do  
        if [ `pgrep httpd | wc -l` -le 0 ]  
        then  
            service httpd start
            sleep 15  
            echo "#1#" $(date +"%y-%m-%d %H:%M:%S") "start httpd" `ps -ef | grep httpd | wc -l`  
        fi  
    done  
else  
    if [ `pgrep httpd | wc -l` -le 0 ]  
    then  
        service httpd start  
        sleep 15  
        echo "#2#" $(date +"%y-%m-%d %H:%M:%S") "start httpd" `ps -ef | grep httpd | wc -l`  
    fi
fi

存成脚本,加入cron,每分钟一次跑。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Discuz! X

GMT+8, 2025-1-21 20:15 , Processed in 0.018329 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表