当前位置: 技术问答>linux和unix
crontab任务问题
来源: 互联网 发布时间:2017-01-19
本文导语: 如题: 这里有添加一个solaris系统的crontab任务 比如:10 * * * * root run-parts /opt/test.sh //每小时执行/etc/cron.hourly内的脚本 每小时的10分执行脚本. 问题来了:test.sh正常情况下一个小时之内是可以执行完成的。...
如题:
这里有添加一个solaris系统的crontab任务
比如:10 * * * * root run-parts /opt/test.sh //每小时执行/etc/cron.hourly内的脚本
每小时的10分执行脚本.
问题来了:test.sh正常情况下一个小时之内是可以执行完成的。异常情况下就玩不了了。
可是下一个小时的定时任务又来了。
这就麻烦了。。好多僵死出现。。test.sh是对数据库进行操作的。所以绝对不能同步运行。。
给个解决方案呗各位
这里有添加一个solaris系统的crontab任务
比如:10 * * * * root run-parts /opt/test.sh //每小时执行/etc/cron.hourly内的脚本
每小时的10分执行脚本.
问题来了:test.sh正常情况下一个小时之内是可以执行完成的。异常情况下就玩不了了。
可是下一个小时的定时任务又来了。
这就麻烦了。。好多僵死出现。。test.sh是对数据库进行操作的。所以绝对不能同步运行。。
给个解决方案呗各位
|
简单点的,每次开始执行时,把运行的进程ID写入一个文件,执行完毕后删除这个文件
下次再执行时,首先判断那个文件是否存在,存在的话再检查里面的进程ID是否还存在,如果那个进程存在,就退出执行。
下次再执行时,首先判断那个文件是否存在,存在的话再检查里面的进程ID是否还存在,如果那个进程存在,就退出执行。
|
防止脚本重复运行
http://bbs.chinaunix.net/thread-3612103-1-1.html
http://bbs.chinaunix.net/thread-1800848-1-1.html
http://bbs.chinaunix.net/thread-3612103-1-1.html
http://bbs.chinaunix.net/thread-1800848-1-1.html
|
加锁啊
一般都这么做
一般都这么做