Django + Celery + RabbitMQ 的书籍推荐?
好的,我一直在研究 celery
和 rabbitmq
,虽然我很欣赏这个项目和它的文档,但我还是对很多事情感到困惑。
http://ask.github.com/django-celery/
我特别困惑的是,celery
是不是只适用于 Django,还是可以作为一个独立的服务器使用,因为第二个链接说 celery
和 Django 紧密结合。两个网站展示了不同的设置和使用 celery
的方法,这让我觉得很混乱。
说够了,有没有合适的书可以买来看看?
3 个回答
这个问题是很久以前问的,最近celery的文档更新得很不错,所以可以先看看常见问题解答,这样可以解决类似的问题。
http://docs.celeryproject.org/en/latest/faq.html#is-celery-for-django-only
我不知道有没有相关的书籍,估计在亚马逊上搜索一下就能找到。
简单来说,celery是作为一个独立的服务器运行的,它可以很好地支持单独的Python程序,也可以支持Django,所以它并不是直接和Django绑定在一起的。你还可以在多台电脑上运行celeryd
这个工作程序,这样它们就可以同时处理同一个任务队列。通常会有一个单独的队列服务器,比如RabbitMQ,用来存储队列消息。
需要记住的是,django-celery
只是一个集成应用,它的作用是把Django和Celery连接在一起。
这不是一本书,不过我最近在Dotcloud上设置了Django和Celery的环境,这里有个简短的文档:
http://web.archive.org/web/20150329132442/http://docs.dotcloud.com/tutorials/python/django-celery/
这个文档是为了帮助你处理一些简单的任务,这些任务可以异步运行,也就是说它们可以在后台执行,不会阻塞你的主程序。虽然有一些Dotcloud特有的设置,但其他部分应该能让你更明白一些。根据我所知道的,Celery最开始是和Django紧密结合在一起的,但后来它变得独立了,虽然它仍然和Django保持着很好的兼容性。