我们使用Python 2.6中的sched模块每60秒运行一次函数。执行后,每次调用都会发出sched.enter()函数,延迟时间为60,优先级为1.这已经正常工作。
但是,我们发现了一种情况,即下一次执行sched函数的时间不会持续几分钟,甚至会在5-6分钟后发生。这已在虚拟机上观察到。
可能导致这种情况的原因是什么?是否有任何解决方法可以确保任务定期执行?
答案 0 :(得分:0)
调用sched.enter
之前发生的处理需要多长时间?我建议对此进行监控,并可能在delay
sched.enter
参数中考虑处理时间。
VM和VM主机的负载也可能是重要因素。我看到一些应用程序中的性能下降是由VM主机负载过高和交换引起的。