Hacker News new | ask | show | jobs
by Paul-Craft 726 days ago
One thing I have learned after nearly a decade in the industry is that you should just never, ever, ever use `celery`. It's overly complicated to program with; the monitoring tools are not great; and the one guarantee you can make is that at some point, you will have some kind of difficult to debug, mysterious failure involving it.

If I needed asynchronous background processing in Python today, I'd definitely be looking into `django-tasks.` If you asked me yesterday, I'd have told you I'd use SQS / whatever the platform equivalent was, or, failing that, I'd probably go with `dramatiq`.

Edit: LOL, I can't believe I forgot to mention what a fscking nightmare `celery` is to deploy and configure. UGH.

2 comments

Which django-tasks? This one that started development a month ago?

https://github.com/RealOrangeOne/django-tasks

The very same. As mentioned in the article, it's going to be distributed with the newest version of Django.
I don't understand that. The article says '...an existing external project that served as a proof of concept', and the DEP calls it '...an "early-access" demo to get initial feedback'.

Although it looks interesting and I'll keep an eye on it, if I needed something right now, I wouldn't use it.

Does Django-tasks support different workers with different environments? Say I need a worker with GPU capabilities, can it do that?
I don't have any idea. Take a look here: https://github.com/RealOrangeOne/django-tasks