I'm sure I'm not the only person using HireFire to manage worker dynos.
My workers send emails using Celery tasks and Redis.
When HireFire is off, everything works great. I set the Dynos for Celery and CeleryBeat to 1 and the tasks all succeed.
When I turn HireFire on, jobs are getting lost in the Queue.
I found this article on the Ruby library to handle exceptions caused by dyno restarts:
https://devcenter.heroku.com/articles/queuing-ruby-resque#job-termination
Does anyone know of a similar Python version, or another source of information?
https://github.com/jezdez/hirefire/
This is the Python library for HireFire on Github. I've looked through it, but I'm not having any moments of clarity.
https://github.com/AnthonyBRoberts/NNS
This is my repo on Github. There's no settings files in the repo (for obvious reasons). Here's the relevant settings:
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()
Any thoughts are welcome, and let me know what additional information would be useful.
Thanks,
Anthony