Python 持久性后台任务Django+;赫罗库
我的Python 持久性后台任务Django+;赫罗库,python,django,heroku,background,cron,Python,Django,Heroku,Background,Cron,我的ubuntu服务器上有一个持久后台进程,目前作为一个独立的python脚本运行,由supervisor管理。然而,我正在迁移到Heroku,我想知道是否有人有过设置相同环境的经验 剧本的规格 从外部API获取信息 对数据进行计算 将数据存储到数据库中 如果脚本使用时间少于5秒,请在剩余时间内休眠,否则请再次运行 我可以每5秒运行一次cronjob,但有时步骤1-3可能需要整整一个小时。 有什么建议吗 谢谢。您要做的是创建一个辅助进程。只需定义一个命令行脚本,以便轻松调用它,然后在Procfi
ubuntu
服务器上有一个持久后台进程,目前作为一个独立的python脚本运行,由supervisor
管理。然而,我正在迁移到Heroku,我想知道是否有人有过设置相同环境的经验
剧本的规格
谢谢。您要做的是创建一个辅助进程。只需定义一个命令行脚本,以便轻松调用它,然后在
Procfile
中添加一个新的worker条目,如下所示:
# Procfile
web: python manage.py runserver # example
worker: python manage.py start_cronjob # command to run your background process
一旦您在程序文件中定义了此项,请继续并将应用程序推送到Heroku,然后放大工作进程:
$ heroku scale worker=1
这将启动一个工作进程
要查看日志并确保一切按预期进行,您可以说:
$ heroku logs --tail --ps worker
前几天我发现了这一点,我不敢相信它在文档中的位置不高。Heroku支持团队一直告诉我安排作业和/或使用重新排队。非常感谢,伙计。