最近在工作中遇到了这样一个问题,加入crontab里面的定时任务,偶尔会出现无法定时执行,导致业务异常,于是自己就考虑这是够可以自己写一个类似于定时任务的脚本,这样只要服务器不挂,程序就不会挂掉。(但是会存在一个问题,如果程序进程被挤掉仍旧会出现类似的问题?)。自己想过可以采用进程守护去解决--待续
# -*- coding: UTF-8 -*-
import os
import time
'''
模拟定时任务,启动监控自动化导报告脚本进程是否存在
'''
while True:
#获取进行信息
out=os.popen("ps -ef | grep url.py").read()
#将列表转换为附带下标的lie
for index,line in enumerate(out.splitlines()):
if index == 0:
if '/usr/gk_script/automation/url.py' in line:
#获取进程号
pid = int(line.split()[1])
print(pid)
else:
#执行自动化打报告脚本
print("调用自动化导报告脚本:/usr/bin/python /usr/gk_script/automation/url.py")
os.system("/usr/bin/python /usr/gk_script/automation/url.py")
#执行完60秒再次尝试执行
time.sleep(60)
Python模拟Linux中crontab定时任务
最新推荐文章于 2023-06-12 18:44:13 发布