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

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

[复制链接]

456

主题

2116

回帖

5720

积分

论坛元老

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

使用道具 举报

31

主题

93

回帖

289

积分

中级会员

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

使用道具 举报

6

主题

85

回帖

192

积分

注册会员

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

使用道具 举报

8

主题

360

回帖

828

积分

高级会员

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

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

使用道具 举报

128

主题

6560

回帖

1万

积分

论坛元老

积分
13678
发表于 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-7-2 21:37 , Processed in 0.024624 second(s), 4 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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