我确信我不是唯一一个使用HireFire来管理工作人员的人。
我的工作人员使用Celery任务和Redis发送电子邮件。
当HireFire关闭时,一切都很好。我将Dynos for Celery和CeleryBeat设置为1并且任务都成功了。
当我打开HireFire时,队列中的作业会丢失。
我在Ruby库上发现这篇文章来处理由dyno restarts引起的异常:
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上的回购。回购中没有设置文件(原因很明显)。以下是相关设置:
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()
欢迎任何想法,并让我知道哪些其他信息会有用。
谢谢,
安东尼