According to the docs of django channels:


One thing channels do not do, however, is guarantee delivery. If you need certainty that tasks will complete, use a system designed for this with retries and persistence (e.g. Celery), or alternatively make a management command that checks for completion and re-submits a message to the channel if nothing is completed (rolling your own retry logic, essentially).

I worked with celery some years ago. Yes, it is great, it is big, it is too much. I would like to avoid it.

I am searching a simple tasks queue with guarantee delivery and a re-submission on failure.

An other alternative would be python-rq. But this has other disadvantages like using pickle data format instead of json.


A friend gave me an advice:


Looks good.

From the docs

An attempt to implement a distributed task queue for use with Django channels. Modelled after RQ and Celery, complex task workflows are possible, all leveraging the Channels machinery.

| improve this answer | |
  • I am thinking about replacing Celery in a project I am working on because of a lot of instability I am facing. Do you think django-cq is worth it and production ready ? – thelinuxer Dec 7 '18 at 15:48
  • 1
    @thelinuxer I only tried it once. I have no real world and long-term experience with it. Sorry. – guettli Dec 10 '18 at 9:05
  • thanks a lot for replying :) – thelinuxer Dec 10 '18 at 21:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.