Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
cron的重新划分 (我为我的问题的糟糕表述提前道歉,请考虑英语不是我的第一语言)。_Cron - Fatal编程技术网

cron的重新划分 (我为我的问题的糟糕表述提前道歉,请考虑英语不是我的第一语言)。

cron的重新划分 (我为我的问题的糟糕表述提前道歉,请考虑英语不是我的第一语言)。,cron,Cron,我有几个进程(cron),我想“优化”启动它们的时间表 例如,cron c1每3分钟启动一次,cron c1每7分钟启动一次,cron c3每18分钟启动一次。假设它们只持续几秒钟就停止了 这里的时间单位是1分钟 现在,我想要的是,这些cron是分布式的,这样我们就不会有很多cron开始的时候,然后长时间间隔没有cron。例如,如果c1和c3都在时间0开始,则它们将每18分钟一起重新开始。最好在时间0启动cron c1,然后在时间1启动c3,这样它们就不会一起启动 因此,我们的想法是,给定一个周

我有几个进程(cron),我想“优化”启动它们的时间表

例如,cron c1每3分钟启动一次,cron c1每7分钟启动一次,cron c3每18分钟启动一次。假设它们只持续几秒钟就停止了

这里的时间单位是1分钟

现在,我想要的是,这些cron是分布式的,这样我们就不会有很多cron开始的时候,然后长时间间隔没有cron。例如,如果c1和c3都在时间0开始,则它们将每18分钟一起重新开始。最好在时间0启动cron c1,然后在时间1启动c3,这样它们就不会一起启动

因此,我们的想法是,给定一个周期性的cron列表,计划一个时间表,以便每个cron之间有尽可能多的时间,并且当两个cron一起启动时,有尽可能少的时间

关于这些问题有一些著名的算法吗

这个问题的实际应用是:~200个cron。有些导弹每5分钟或10分钟或30分钟发射一次,持续时间很短(几秒钟),有些导弹(20-25分钟)每2小时发射一次,持续几分钟。因此,我们的想法也是,大cron不会同时启动


<>我自己是数学家而不是计算机科学家,所以我问了这个问题,因为我认为这也是数学家的一个“好”问题。

< P>我认为你应该考虑每一个Con所使用的资源,然后从中安排你的工作。


我不认为有什么特别的算法可以解决这个问题。

问题是:我还不知道确切的答案。这个想法是,最终用户可以通过说他希望cron每5/10分钟左右运行一次来配置cron。有几个用户可以这样做,但他们不知道其他用户会问什么。因此,我的目标是尊重最终用户的需求,并通过这种算法分发cron。