编程 liunx服务器监控workerman进程守护

2024-11-18 13:28:44 +0800 CST views 3497

如果workerman的进程一旦挂掉。那么后果是非常严重的一件事情。有没有做到一键值守呢。

#创建workerman.sh文件

#!/bin/bash
# author: 明天见
# desc: 监控workerman主进程
count=`ps -ef |grep 'WorkerMan'| grep -v 'grep' | grep 'master' | wc -l`
#判断线程是否启动
if [ $count -lt 1 ]; then
# 如果线程没有启动就让线程进行重启下
cd /www/wwwroot/XXXXX/workerman/
nohup php start.php restart &>> workerman.log 2>&1
echo "restart";
echo $(date +%Y-%m-%d %H:%M:%S) &>>workerman.log
#追加写入日志
fi

然后在把 ./workerman.sh 放到后台进行1秒检查一次 断掉就自动重启

ps -ef |grep 'WorkerMan'

workerman.png

我们在继续把上面的脚本进行优化下 改为由shell进行文件监控

#!/bin/bash
# author: 明天见
# desc: 监控workerman主进程
while true
do
    count=`ps -ef |grep 'WorkerMan'| grep -v 'grep' | grep 'master' | wc -l`
    #判断线程是否启动
    if [ $count -lt 1 ]; then
    # 如果线程没有启动就让线程进行重启下
    cd /www/wwwroot/XXXX/workerman/
    nohup php start.php restart &>> workerman.log 2>&1
    echo "restart";
    echo $(date +%Y-%m-%d_%H:%M:%S) &>>workerman.log
    #追加写入日志
    fi
    sleep 1s
done
复制全文 生成海报 系统监控 自动化 脚本编程

推荐文章

乐观锁和悲观锁,如何区分?
2024-11-19 09:36:53 +0800 CST
软件定制开发流程
2024-11-19 05:52:28 +0800 CST
Vue3中如何进行异步组件的加载?
2024-11-17 04:29:53 +0800 CST
Golang 随机公平库 satmihir/fair
2024-11-19 03:28:37 +0800 CST
Vue3中如何处理组件的单元测试?
2024-11-18 15:00:45 +0800 CST
四舍五入五成双
2024-11-17 05:01:29 +0800 CST
Vue中如何处理异步更新DOM?
2024-11-18 22:38:53 +0800 CST
MySQL数据库的36条军规
2024-11-18 16:46:25 +0800 CST
动态渐变背景
2024-11-19 01:49:50 +0800 CST
liunx宝塔php7.3安装mongodb扩展
2024-11-17 11:56:14 +0800 CST
Python设计模式之工厂模式详解
2024-11-19 09:36:23 +0800 CST
jQuery中向DOM添加元素的多种方法
2024-11-18 23:19:46 +0800 CST
25个实用的JavaScript单行代码片段
2024-11-18 04:59:49 +0800 CST
PHP解决XSS攻击
2024-11-19 02:17:37 +0800 CST
LLM驱动的强大网络爬虫工具
2024-11-19 07:37:07 +0800 CST
MySQL死锁 - 更新插入导致死锁
2024-11-19 05:53:50 +0800 CST
JavaScript 实现访问本地文件夹
2024-11-18 23:12:47 +0800 CST
程序员茄子在线接单