我的ubuntu
服务器上有一个持久的后台进程当前作为独立的python脚本运行,由supervisor
管理。但是,我正在迁移到Heroku
并想知道是否有人有任何建立相同环境的经验。
脚本的规格;
我可以每隔5秒运行一次cronjob,但有时候步骤1-3可能需要一整个小时。 有什么提示吗?
感谢。
答案 0 :(得分:2)
您要做的是创建一个工作进程。只需定义一个命令行脚本,以便您可以轻松调用它,然后在Procfile
中添加一个新的工作条目,如下所示:
# Procfile
web: python manage.py runserver # example
worker: python manage.py start_cronjob # command to run your background process
一旦您在Procfile
中定义了此内容,请继续将您的应用推送到Heroku,然后扩展工作流程:
$ heroku scale worker=1
这将启动单个工作进程。
要查看日志并确保按预期工作,您可以说:
$ heroku logs --tail --ps worker