| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292 | 
							- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
 
- <html>
 
- <head>
 
- <meta charset="utf-8">
 
- <meta name="keywords" content="task queue, job queue, asynchronous, rabbitmq, amqp,
 
- redis, django, python, webhooks, queue, distributed">
 
- <meta name="description" content="open source distributed task queue" >
 
- <link rel="icon" type="image/png" href="favicon0.png">
 
- <meta name="viewport" content="width=500, user-scalable=no">
 
- <link rel="apple-touch-icon" href="favicon_64.png"/>
 
- <title>Celery - The Distributed Task Queue</title>
 
- <link rel="stylesheet" href="main0000.css"/>
 
- <link rel="stylesheet" href="trac0000.css"/>
 
- <script type="text/javascript">
 
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
 
- </script>
 
- <script type="text/javascript">
 
- try {
 
- var pageTracker = _gat._getTracker("UA-12986238-1");
 
- pageTracker._trackPageview();
 
- } catch(err) {}</script>
 
- <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
 
- </head>
 
- <body>
 
- <div id="navbar">
 
-   <div class="iStretch">
 
-     <div class="link" id="current"><a href="index.html">Home</a></div>
 
-     <div class="link"><a href="http://github.com/ask/celery">Code</a></div>
 
-     <div class="link"><a href="http://docs.celeryproject.org/">Documentation</a></div>
 
-     <div class="link"><a href="community.html">Community</a></div>
 
-     <div class="link"><a href="http://pypi.python.org/pypi/celery#downloads">Download</a></div>
 
- <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
 
- <input type="hidden" name="cmd" value="_s-xclick">
 
- <input type="hidden" name="encrypted" value="-----BEGIN PKCS7-----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-----END PKCS7-----
 
- ">
 
- <input type="image" src="https://www.paypal.com/en_US/i/btn/btn_donate_SM.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
 
- <img alt="" border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
 
- </form>
 
-     
 
-   </div>
 
- </div>
 
- <div class="iStretch">
 
-   <div id="topcontainer">
 
-   <ul>
 
-     <li>Background Processing
 
-     <li>Distributed
 
-     <li>Asynchronous/Synchronous
 
-     <li>Concurrency
 
-     <li>Periodic Tasks
 
-     <li>Retries
 
-   </ul>
 
-   </div>
 
-   <div id="contentcontainer">
 
-     <div class="column">
 
-         <h2>Distributed Task Queue</h2>
 
-         <p> Celery is an asynchronous task queue/job queue based on distributed message passing.
 
-         It is focused on real-time operation, but supports scheduling as well.</p>
 
-         <p>The execution units, called tasks, are executed concurrently on a single or
 
-         more worker servers using multiprocessing, <a href="http://eventlet.net">Eventlet</a>,
 
-         or <a href="http://gevent.org">gevent</a>. Tasks can execute asynchronously (in the background) or synchronously
 
-         (wait until ready).</p>
 
-         <p>Celery is used in production systems to process millions of tasks a day.</p>
 
-         <p>Celery is written in Python, but the protocol can be implemented in any
 
-         language.
 
-         It can also <a href="http://docs.celeryproject.org/userguide/remote-tasks.html"
 
-         >operate with other languages</a> using webhooks.</p>
 
-     <p>The recommended message broker is <a href="http://rabbitmq.com/">RabbitMQ</a>,
 
-         but limited support for <a href="http://redisdb.com/">Redis</a>, <a
 
-             href="http://kr.github.com/beanstalkd/">Beanstalk</a>, <a
 
-             href="http://www.mongodb.org/">MongoDB</a>, <a
 
-             href="http://couchdb.apache.org/">CouchDB</a>, and databases
 
-         (using <a href="http://www.sqlalchemy.org/">SQLAlchemy</a> or the <a
 
-             href="http://djangoproject.com">Django ORM</a>) is also available.</p>
 
-         Celery is easy to integrate with Django, Pylons and Flask, using
 
-         the <a href="http://pypi.python.org/pypi/django-celery">django-celery</a>,
 
-         <a href="http://pypi.python.org/pypi/celery-pylons">celery-pylons</a>
 
-         and <a href="http://pypi.python.org/pypi/Flask-Celery">Flask-Celery</a> add-on packages.
 
-         <h3>Example</h3>
 
-         <p>This is a simple task adding two numbers:</p>
 
- <div class="highlight"><pre><span class="kn">from</span> <span class="nn">celery.task</span> <span class="kn">import</span> <span class="n">task</span>
 
- <span class="nd">@task</span>
 
- <span class="k">def</span> <span class="nf">add</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">):</span>
 
-     <span class="k">return</span> <span class="n">x</span> <span class="o">+</span> <span class="n">y</span>
 
- </pre></div>
 
-         <p>You can execute the task in the background, or wait for it to
 
-         finish:</p>
 
- <div class="highlight"><pre><span class="o">>>></span> <span class="n">result</span> <span class="o">=</span> <span class="n">add</span><span class="o">.</span><span class="n">delay</span><span class="p">(</span><span class="mi">8</span><span class="p">,</span> <span class="mi">8</span><span class="p">)</span>
 
- <span class="o">>>></span> <span class="n">result</span><span class="o">.</span><span class="n">wait</span><span class="p">()</span> <span class="c"># wait for and return the result</span>
 
- <span class="mi">16</span>
 
- </pre></div>
 
-     <h3>Getting Started</h3>
 
-     <ol>
 
-         <li>Install celery by download or <code>pip install -U Celery</code></li>
 
-         <li>Set up <a href="http://docs.celeryproject.org/getting-started/broker-installation.html">RabbitMQ</a>
 
-         or one of the <a href="http://docs.celeryproject.org/tutorials/otherqueues.html">ghetto queue</a>
 
-         solutions.
 
-         <li>Select one of the following guides:
 
-         <ul>
 
-             <li><a
 
-                 href="http://docs.celeryproject.org/getting-started/first-steps-with-celery.html">First steps with Python</a></li>
 
-             <li><a href="http://docs.celeryproject.org/django-celery/getting-started/first-steps-with-django.html">First steps with Django</a></li>
 
-         </ul>
 
-     </ol>
 
-     <h3>Community</h3>
 
-     <p>There is a <a href="http://groups.google.com/group/celery-users">mailing-list</a>
 
-     available for general discussion.</p>
 
-     <p>For those craving real, human interaction, there is also an IRC channel
 
-     (<code>#celery</code> on <code>irc.freenode.net</code>).</p>
 
-     <p>Finally, if you find a bug or would like to request a feature,
 
-     please <a href="http://github.com/ask/celery/issues">submit an
 
-         issue</a>.</p>
 
-     <a name="donate"></a>
 
-     <h3>Donate</h3>
 
-     <p>
 
-     <a href='http://www.pledgie.com/campaigns/8424'><img alt='Click here to lend your support to: celery and make a donation at www.pledgie.com !' src='http://www.pledgie.com/campaigns/8424.png?skin_name=chrome' border='0' /></a>
 
-     </p>
 
-     <p>Donations will be used to fund infrastructure and new features.</p>
 
-     <p>
 
-     You can <a href='http://www.pledgie.com/campaigns/8424'
 
-         target='_new'>donate to the project</a> using PayPal.
 
-     For other arrangements you can send an email to
 
-     <a href="mailto:donate@celeryproject">donate@celeryproject.org</a>.
 
-     <div class="hidden">
 
-         <p>          
 
-                    
 
-         </p>
 
-         <p>          
 
-                    
 
-         </p>
 
-         <p>          
 
-                    
 
-         </p>
 
-     </div>
 
-     </div>
 
-     <div class="column side">
 
-       <span class="newsitem">
 
-       <h2>Celery 2.2 released!</h2>
 
-       <h4>By <a href="http://twitter.com/asksol">@asksol</a> on 2011-02-01.</h4>
 
-       <p>A great number of new features, including Jython, eventlet and gevent
 
-       support.  Everything is detailed in the
 
-       <a href="http://docs.celeryproject.org/changelog.html">Changelog</a>, which
 
-       you should have read before upgrading.</p> <p>Users of Django must also upgrade to
 
-       <a href="http://pypi.python.org/pypi/django-celery">django-celery 2.2</a>.</p>
 
-       <p>This release would not have
 
-       been possible without the help of contributors and users, so
 
-       thank you, and congratulations!
 
-       </span>
 
-       <span class="newsitem">
 
-       <h2>Celery 2.1.1 bugfix release</h2>
 
-       <h4>By <a href="http://twitter.com/asksol">@asksol</a> on 2010-10-14.</h4>
 
-       <p>All users are urged to upgrade.  For a list of changes see the
 
-       <a href="http://docs.celeryproject.org/changelog.html">Changelog</a>.</p>
 
-       <p>Users of Django must also upgrade to
 
-       <a href="http://pypi.python.org/pypi/django-celery">django-celery 2.1.1</a>.</p>
 
-       </span>
 
-       <span class="newsitem">
 
-       <h2>Celery 2.1 released!</h2>
 
-       <h4>By <a href="http://twitter.com/asksol">@asksol</a> on 2010-10-08.</h4>
 
-       <p>This new version is now available at PyPI.  Be sure to read the
 
-       <a href="http://docs.celeryproject.org/changelog.html">Changelog</a> before upgrading.</p>
 
-       </span>
 
-       <span class="newsitem">
 
-       <h2>Celery 2.0 released!</h2>
 
-       <h4>By <a href="http://twitter.com/asksol">@asksol</a> on 2010-07-02.</h4>
 
-       <p>We're proud to announce the release of Celery 2.0. This version replaces
 
-       the Django ORM with SQLAlchemy as the database result store. With this, Celery no
 
-       longer depends on Django. Django integration is now available as a separate package
 
-       called <a href="http://pypi.python.org/pypi/django-celery">django-celery</a>.
 
-       </p>
 
-       <p>In addition there are a lot of new features: a curses monitor, time
 
-       limits, complex crontab expressions, callbacks, simplified routing,
 
-       and more. Everything is detailed in the <a
 
-           href="http://docs.celeryproject.org/changelog.html#id1">Changelog</a>,
 
-       so be sure to read it before upgrading.</p>
 
-       </span>
 
-       <span class="newsitem">
 
-       <h2>Celery 1.0.6 released!</h2>
 
-       <h4>By <a href="http://twitter.com/asksol">@asksol</a> on 2010-06-30.</h4>
 
-       <p>RabbitMQ 1.8.0 came with stricter equivalence checks that broke the
 
-       AMQP result backend, this release resolves this. If you've already used
 
-       the AMQP backend you need to delete the previous declarations. For
 
-       instructions please read the full
 
-       <a href="http://docs.celeryproject.org/changelog.html">Changelog</a>.
 
-       Download from <a href="http://pypi.python.org/pypi/celery/1.0.6">PyPI</a>,
 
-       or simply install the upgrade using <code>pip install -U Celery==1.0.6</code>.
 
-       <hr>
 
-       </span>
 
-       <span class="newsitem">
 
-       <h2>Celery 1.0.5 released!</h2>
 
-       <h4>By <a href="http://twitter.com/asksol">@asksol</a> on 2010-06-01.</h4>
 
-       <p>This release contains some important bug fixes related to shutdown and
 
-       broker connection loss, as well as some other minor fixes. Also
 
-       AbortableTask has been added to contrib. Please read the full <a
 
-           href="http://docs.celeryproject.org/changelog.html">Changelog</a>
 
-       before you upgrade. Download from <a href="http://pypi.python.org/pypi/celery/1.0.5">PyPI</a>,
 
-       or simply install the upgrade using <code>pip install -U Celery</code>.
 
-       <hr>
 
-       </span>
 
-       <span class="newsitem">
 
-       <h2>Celery 1.0.3 released!</h2>
 
-       <h4>By <a href="http://twitter.com/asksol">@asksol</a> on 2010-05-15.</h4>
 
-       <p>This release contains a drastic improvement in reliability and
 
-       performance. Please read the full <a href="http://docs.celeryproject.org/changelog.html">Changelog</a>
 
-       before you upgrade. Download from <a href="http://pypi.python.org/pypi/celery/1.0.3">PyPI</a>,
 
-       or simply install the upgrade using <code>pip install -U Celery</code>.
 
-       <hr>
 
-       </span>
 
-       <span class="newsitem">
 
-       <h2>Celery 1.0.1 released!</h2>
 
-       <h4>By <a href="http://twitter.com/asksol">@asksol</a> on 2010-03-20.</h4>
 
-       <p>This is a bugfix release and has some important changes to the
 
-       shutdown procedure. Also improved compatibility with Windows and Python
 
-       2.4. Read the full <a href="http://docs.celeryproject.org/changelog.html">Changelog</a>
 
-       for more information. Download from <a
 
-           href="http://pypi.python.org/pypi/celery/1.0.1">PyPI</a>,
 
-       or simply install the upgrade using <code>pip install -U Celery</code>.
 
-       <hr>
 
-       </span>
 
-       <span class="newsitem">
 
-       <h2>Celery 1.0 released!</h2>
 
-       <h4>By <a href="http://twitter.com/asksol">@asksol</a> on 2010-02-10</h4>
 
-       <p>Celery 1.0 has finally been released! It is available on <a
 
-           href="http://pypi.python.org/pypi/celery/1.0.0">PyPI</a> for
 
-       downloading. You can also install it via <code>pip install
 
-           Celery</code>. You can read the announcement <a href="http://celeryproject.org/celery_1.0_released.html">here</a>.
 
-       <hr>
 
-       </span>
 
-     </div>
 
-     <div style="clear:both"></div>
 
-   </div>
 
-  <div id="credits">
 
-    <ul>
 
-      <li>
 
-        <strong>Copyright (c) 2009-2011</strong>
 
-        <span><a href="http://twitter.com/asksol">Ask Solem</a> and
 
-          <a href="http://github.com/ask/celery/blob/master/AUTHORS">contributors</a>.</span>
 
-      </li>
 
-      <li>
 
-        <strong>Web Design</strong>
 
-        <span><a href="http://www.helmersworks.com/">Jan Henrik Helmers</a></span>
 
-      </li>
 
-    </ul>
 
-  </div>
 
- </div>
 
- </body>
 
- </html>
 
- <!-- This document saved from http://celeryproject.org/ -->
 
 
  |