ApsScheduler和Heroku:已跳过作业执行:已达到最大运行实例数

2024-04-24 18:50:00 发布

您现在位置:Python中文网/ 问答频道 /正文

三年前有一个类似的问题贴在这里:

WARNING:apscheduler.scheduler:Execution of job skipped: maximum number of running instances reached (1)

但这个问题一直没有得到完全的回答。在

我的流程每3小时执行一次。我启动了更新数据库的命令,但不知怎么的它们没有关闭。所以在几周后,我得到了一个错误“job-skipped:maximum number of running instances reached(1)”。但不管怎样,有没有办法终止我的命令,这样它们就释放出来了,不会累积了?在

最初的帖子建议使用一个名为程序终止. 这是哪个图书馆的?如何用python实现它?在

这是我从APScheduler得到的时间表

@scheduler.scheduled_job('cron', hour='0,3,6,9,12,15,18')
def clock_scheduled_commands():
    print('Updating Tables')
    updatePrices.main()
    print('Updating Margins')
    calculateMargins.main()
    #print('Pushing to Perm')
    #PushToPerm.main()
    print(time.strftime("%A, %d. %B %Y %I:%M:%S %p"))

注意更新prices.main()和calculateMargins.main()两者都返回0,表示它们已完成。它们都会在末尾关闭光标(据我所知)。在

编辑:以下是我的Heroku程序文件:

^{pr2}$

Tags: ofinstances命令程序numbermainjobrunning