我确信我不是唯一使用 HireFire 来管理工人测功机的人。
我的员工使用 Celery 任务和 Redis 发送电子邮件。
当 HireFire 关闭时,一切正常。我将 Celery 和 CeleryBeat 的 Dynos 设置为 1,任务都成功了。
当我打开 HireFire 时,队列中的作业会丢失。
我在 Ruby 库上找到了这篇文章来处理由 dyno 重启引起的异常:
https://devcenter.heroku.com/articles/queuing-ruby-resque#job-termination
有谁知道类似的 Python 版本或其他信息来源?
https://github.com/jezdez/hirefire/
这是 Github 上 HireFire 的 Python 库。我已经看过了,但我没有任何清晰的时刻。
https://github.com/AnthonyBRoberts/NNS
这是我在 Github 上的仓库。repo 中没有设置文件(原因很明显)。以下是相关设置:
HIREFIRE_PROCS = ["procs.CelerydProc", "procs.CelerybeatProc"]
MIDDLEWARE_CLASSES = (
'hirefire.contrib.django.middleware.HireFireMiddleware',
...
)
INSTALLED_APPS = (
...
'django_ses',
'djcelery',
...
)
BROKER_URL = os.getenv('REDISTOGO_URL','redis://localhost:6379')
import djcelery
djcelery.setup_loader()
欢迎提出任何想法,并让我知道哪些附加信息有用。
谢谢,
安东尼