通过Linux定时任务加shell脚本检测RabbitMQ消费者运行状况以及自启

目的:防止RabbitMQ消费者进程中断影响业务

1、编写 rabbitmq_consumer.php消费者文件

(关于消费者和生产者请移步:https://blog.csdn.net/why444216978/article/details/84987011

2、编写shell脚本 check_php_runing.sh 定时检测消费者而启动情况,如未启动则启动

#!/bin/sh
pro=$(ps -ef | grep $1 |grep -v grep | grep -v "$0")
#过滤出目标进程信息,如果pro为空串说明目标进程未运行
#反向过滤掉grep进程 和 本进程信息, 因为这两个进程信息中包含目标进程的名字
if [ -z "$pro" ]
then
echo "$(date):$1程序未启动,重新启动程序"
"/usr/local/php/bin/php" $1
else
echo "$(date):$1程序正在运行"
fi

sleep 0.5

3、更改定时任务列表

(定时任务相关操作请移步:https://blog.csdn.net/why444216978/article/details/83748136

* * * * * sh /usr/local/nginx/html/queen/check_php_runing.sh /usr/local/nginx/html/queen/rabbitmq_consumer.php >> /usr/local/nginx/html/queen/logs/check_php_runing.log

猜你喜欢

转载自blog.csdn.net/why444216978/article/details/84987048
今日推荐