|
@@ -16,32 +16,33 @@
|
|
.. _celery-synopsis:
|
|
.. _celery-synopsis:
|
|
|
|
|
|
Celery is an open source asynchronous task queue/job queue based on
|
|
Celery is an open source asynchronous task queue/job queue based on
|
|
-distributed message passing. It is focused on real-time operation,
|
|
|
|
|
|
+distributed message passing. It is focused on real-time operation,
|
|
but supports scheduling as well.
|
|
but supports scheduling as well.
|
|
|
|
|
|
The execution units, called tasks, are executed concurrently on one or
|
|
The execution units, called tasks, are executed concurrently on one or
|
|
-more worker nodes. Tasks can execute asynchronously (in the background) or
|
|
|
|
|
|
+more worker nodes. Tasks can execute asynchronously (in the background) or
|
|
synchronously (wait until ready).
|
|
synchronously (wait until ready).
|
|
|
|
|
|
Celery is already used in production to process millions of tasks a day.
|
|
Celery is already used in production to process millions of tasks a day.
|
|
|
|
|
|
Celery is written in Python, but the protocol can be implemented in any
|
|
Celery is written in Python, but the protocol can be implemented in any
|
|
-language. It can also `operate with other languages using webhooks`_.
|
|
|
|
|
|
+language. It can also `operate with other languages using webhooks`_.
|
|
|
|
|
|
The recommended message broker is `RabbitMQ`_, but support for `Redis`_ and
|
|
The recommended message broker is `RabbitMQ`_, but support for `Redis`_ and
|
|
databases (`SQLAlchemy`_) is also available.
|
|
databases (`SQLAlchemy`_) is also available.
|
|
|
|
|
|
-Celery can be easily used with Django and Pylons using
|
|
|
|
-`django-celery`_ and `celery-pylons`_.
|
|
|
|
-
|
|
|
|
-You may also be pleased to know that full Django integration exists,
|
|
|
|
-delivered by the `django-celery`_ package.
|
|
|
|
|
|
+Celery is easy to integrate with `Django`_, `Pylons`_ and `Flask`_, using
|
|
|
|
+the `django-celery`_, `celery-pylons`_ and `Flask-Celery`_ add-on packages.
|
|
|
|
|
|
.. _`RabbitMQ`: http://www.rabbitmq.com/
|
|
.. _`RabbitMQ`: http://www.rabbitmq.com/
|
|
.. _`Redis`: http://code.google.com/p/redis/
|
|
.. _`Redis`: http://code.google.com/p/redis/
|
|
.. _`SQLAlchemy`: http://www.sqlalchemy.org/
|
|
.. _`SQLAlchemy`: http://www.sqlalchemy.org/
|
|
|
|
+.. _`Django`: http://djangoproject.org/
|
|
|
|
+.. _`Pylons`: http://pylonshq.com/
|
|
|
|
+.. _`Flask`: http://flask.pocoo.org/
|
|
.. _`django-celery`: http://pypi.python.org/pypi/django-celery
|
|
.. _`django-celery`: http://pypi.python.org/pypi/django-celery
|
|
.. _`celery-pylons`: http://bitbucket.org/ianschenck/celery-pylons
|
|
.. _`celery-pylons`: http://bitbucket.org/ianschenck/celery-pylons
|
|
|
|
+.. _`Flask-Celery`: http://github.com/ask/flask-celery/
|
|
.. _`operate with other languages using webhooks`:
|
|
.. _`operate with other languages using webhooks`:
|
|
http://ask.github.com/celery/userguide/remote-tasks.html
|
|
http://ask.github.com/celery/userguide/remote-tasks.html
|
|
|
|
|
|
@@ -57,8 +58,8 @@ This is a high level overview of the architecture.
|
|
|
|
|
|
.. image:: http://cloud.github.com/downloads/ask/celery/Celery-Overview-v4.jpg
|
|
.. image:: http://cloud.github.com/downloads/ask/celery/Celery-Overview-v4.jpg
|
|
|
|
|
|
-The broker pushes tasks to the worker servers.
|
|
|
|
-A worker server is a networked machine running ``celeryd``. This can be one or
|
|
|
|
|
|
+The broker delivers tasks to the worker servers.
|
|
|
|
+A worker server is a networked machine running ``celeryd``. This can be one or
|
|
more machines depending on the workload.
|
|
more machines depending on the workload.
|
|
|
|
|
|
The result of the task can be stored for later retrieval (called its
|
|
The result of the task can be stored for later retrieval (called its
|