服务在秒区间启动

Posted westfly

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了服务在秒区间启动相关的知识,希望对你有一定的参考价值。

我们知道crontab的控制只精确到分钟。
在服务器上有进程监控是分钟级别的,一般是在每分钟的0s启动检查。
每日的例行重启是在中控上,可能有时候kill进程时,恰好被进程监控给检测到了,误报比较严重。
 
所以我们需要重启时机在某个秒区间,或者如果有proc的检查脚本运行,则先不kill。
我们选择了第一条思路。实现的脚本如下
function restart_between_sec () {
local time_begin=$1
local time_end=$2
curr_sec=$(date +%S)
curr_sec=$((10#$curr_sec))
 
if [[ $curr_sec -lt $time_begin ]]; then
sleep $(($time_begin - $curr_sec))
fi
if [[ $curr_sec -gt $time_end ]]; then
sleep $(($time_begin + 60 - $curr_sec ))
fi
}
restart_between_sec 5 55

  

注意有个10#的作用,是将curr_sec 强制转换为十进制表示。

以上是关于服务在秒区间启动的主要内容,如果未能解决你的问题,请参考以下文章

ForegroundService没有从片段开始?

2021-12-24:划分字母区间。 字符串 S 由小写字母组成。我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。返回一个表示每个字符串片段的长度的列表。 力扣763。某大厂面试

Java 求解划分字母区间

763. 划分字母区间

Leetcode 763 划分字母区间

贪心算法:划分字母区间