首页 > 代码库 > 服务在秒区间启动
服务在秒区间启动
我们知道crontab的控制只精确到分钟。
在服务器上有进程监控是分钟级别的,一般是在每分钟的0s启动检查。
每日的例行重启是在中控上,可能有时候kill进程时,恰好被进程监控给检测到了,误报比较严重。
所以我们需要重启时机在某个秒区间,或者如果有proc的检查脚本运行,则先不kill。
我们选择了第一条思路。实现的脚本如下
function restart_between_sec () {local time_begin=$1local time_end=$2curr_sec=$(date +%S)curr_sec=$((10#$curr_sec)) if [[ $curr_sec -lt $time_begin ]]; thensleep $(($time_begin - $curr_sec))fiif [[ $curr_sec -gt $time_end ]]; thensleep $(($time_begin + 60 - $curr_sec ))fi}restart_between_sec 5 55
注意有个10#的作用,是将curr_sec 强制转换为十进制表示。
服务在秒区间启动
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。