秒懂系列|Apache和NGINX退出自动重启

Posted 程序员到架构师

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了秒懂系列|Apache和NGINX退出自动重启相关的知识,希望对你有一定的参考价值。

有时候,我们的Web服务器如Apache、nginx可能因为某些原因退出了,这时候如果没有及时发现,就会影响服务,所以搞个自动重启是很有必要滴

Apache

#!/bin/sh
HTTPD_NUM=`ps aux | grep -P "(bin/httpd)|(./httpd)" | grep -v "vim" | grep -v "grep" | wc -l`
if [ ${HTTPD_NUM} -eq 0 ]; then
    /usr/local/apache/bin/apachectl restart
fi

Nginx

#!/bin/sh
NGINX_NUM=`ps aux | grep -P "nginx" | grep -v "vim" | grep -v "grep" | wc -l`
if [ ${NGINX_NUM} -eq 0 ]; then
    /usr/local/nginx/sbin/nginx
fi

加入crontab,每分钟检查一次

* * * * * /bin/bash /data/cron/apache_restart.sh > /dev/null 2 >& 1
* * * * * /bin/bash /data/cron/nginx_restart.sh > /dev/null 2 >&1

原理很简单,就是判断是否有进程,如果木有了,执行重启操作!

以上是关于秒懂系列|Apache和NGINX退出自动重启的主要内容,如果未能解决你的问题,请参考以下文章

[3]supervisor使用管理:实现对异常中断子进程的自动重启(以nginx和apache为例)

nginx 不会重启,apache2 时不时地开始运行(自动)

nginx django 升级代码不重启服务的方法

1分钟带你秒懂自动化测试和Appium,Selenium,Jmeter,Dragon testing等一系列自动化测试工具

Nginx系列一:信号与配置

秒懂:tomcat的maxConnectionsmaxThreadsacceptCount 图解