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

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

如果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 00:41:25 +0800 CST
乐观锁和悲观锁,如何区分?
2024-11-19 09:36:53 +0800 CST
Vue3中的虚拟滚动有哪些改进?
2024-11-18 23:58:18 +0800 CST
基于Flask实现后台权限管理系统
2024-11-19 09:53:09 +0800 CST
38个实用的JavaScript技巧
2024-11-19 07:42:44 +0800 CST
使用 Nginx 获取客户端真实 IP
2024-11-18 14:51:58 +0800 CST
Vue 3 路由守卫详解与实战
2024-11-17 04:39:17 +0800 CST
Go 如何做好缓存
2024-11-18 13:33:37 +0800 CST
避免 Go 语言中的接口污染
2024-11-19 05:20:53 +0800 CST
在Rust项目中使用SQLite数据库
2024-11-19 08:48:00 +0800 CST
js函数常见的写法以及调用方法
2024-11-19 08:55:17 +0800 CST
网站日志分析脚本
2024-11-19 03:48:35 +0800 CST
前端代码规范 - 图片相关
2024-11-19 08:34:48 +0800 CST
PyMySQL - Python中非常有用的库
2024-11-18 14:43:28 +0800 CST
使用 sync.Pool 优化 Go 程序性能
2024-11-19 05:56:51 +0800 CST
三种高效获取图标资源的平台
2024-11-18 18:18:19 +0800 CST
Grid布局的简洁性和高效性
2024-11-18 03:48:02 +0800 CST
Golang 随机公平库 satmihir/fair
2024-11-19 03:28:37 +0800 CST
2025,重新认识 HTML!
2025-02-07 14:40:00 +0800 CST
程序员茄子在线接单