3 ms·
Celery together with RabbitMQ (or another message broker) is great for big/huge projects. For basic job queueing and delayed job execution, beanstalkd (http://k
by jonasvp 16y ago
Celery together with RabbitMQ (or another message broker) is great for big/huge projects. For basic job queueing and delayed job execution, beanstalkd (http://kr.github.com/beanstalkd/ http://kr.github.com/beanstalkd/) is in most cases a better choice. It takes almost no memory, no configuration, and just works.
I wrote a small library for Django that makes writing jobs for beanstalkd easier (http://github.com/jonasvp/django-beanstalkd http://github.com/jonasvp/django-beanstalkd). There's also a management command for starting (threaded) workers. Makes writing and calling jobs from Django very simple.
- asksol 16y agoCould you please elaborate why it is a better choice? I don't see how django-beanstalkd could take much less memory than celeryd. If it's about the broker (beanstalk), you could have implemented a beanstalk backend for celery as well, then you would have had a tested implementation of the worker part. Btw, If you would be interested in writing a beanstalkd backend for celery I would be happy to help you out!
- jonasvp 16y agoGood point - I was under the impression that celery _only_ works with an AMQP message broker. Guess I should have read the description more closely before starting on django-beanstalkd. I'm happy with my lightweight model for now but I'll definitely look into celery again, when the need arises.