Celery is a task queue that supports scheduling as well, if you're using Python. Backed by several different brokers including Redis.
- Save result as json, which is queryable in the database
- Save enough info in the task result to retry the task from the result.
- Retry a task from its result in Django Admin
- Run a periodic task now (e.g., to test your cron task)
[1] https://github.com/resulto-admin/django-celery-fulldbresult