Quellcode durchsuchen

Updated documentation

Ask Solem vor 14 Jahren
Ursprung
Commit
7e187814f7

+ 3 - 1
docs/contributing.rst

@@ -141,6 +141,8 @@ been made on your bug. In the event you've turned this feature off, you
 should check back on occasion to ensure you don't miss any questions a
 developer trying to fix the bug might ask.
 
+.. _`GitHub`: http://github.com
+
 .. _issue-trackers:
 
 Issue Trackers
@@ -208,7 +210,7 @@ is following the conventions.
             Short description.
             """
 
-.. `PEP-257`: http://www.python.org/dev/peps/pep-0257/
+.. _`PEP-257`: http://www.python.org/dev/peps/pep-0257/
 
 * Lines should not exceed 78 columns.
 

+ 261 - 0
docs/homepage/community.html

@@ -0,0 +1,261 @@
+<!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"><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="docs/">Documentation</a></div>
+    <div class="link" id="current"><a href="community.html">Community</a></div>
+    <div class="link"><a href="http://pypi.python.org/pypi/celery">Download</a></div>
+  </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>Community Links</h2>
+
+<p class="communitylink"><a href="http://ericholscher.com/blog/2010/nov/11/building-django-app-server-chef-part-4/
+">Building a Django App Server with Chef</a></p>
+<p class="communitylink"><a href="http://trespams.com/2010/11/13/introduccio-celery/
+">Introducció a Celery (Catalan)</a></p>
+
+<p class="communitylink"><a href="http://tensixtyone.com/django-and-celery-death-to-cron
+">Django and Celery - Death to Cron</a></p>
+
+<p class="communitylink"><a href="http://ericholscher.com/blog/2010/nov/2/celery-tips/
+">Celery Tips</a></p>
+
+<p class="communitylink"><a href="http://jacobian.org/writing/favorite-apps/
+">What's your favorite Django app?</a></p>
+
+<p class="communitylink"><a href="http://ericholscher.com/blog/2010/nov/1/virtualenv-tips/
+">Virtualenv Tips</a></p>
+
+<p class="communitylink"><a href="http://iamseb.com/seb/2010/10/10-django-tools/
+">10 Tools That Make Django Better</a></p>
+
+<p class="communitylink"><a href="http://www.loose-bits.com/2010_10_10_archive.html
+">Distributed Task Locking in Celery</a></p>
+
+<p class="communitylink"><a href="http://www.bitbybit.ru/article/216
+">Celery — распределенные очереди задач на Python (Russian)</a></p>
+
+<p class="communitylink"><a href="http://vorushin.ru/blog/34-celery-described/
+">Подробнее о Celery (Russian)</a></p>
+
+<p class="communitylink"><a href="http://blog.timc3.com/2010/10/17/celery-rabbitmq-and-sending-messages-directly/
+">Celery, RabbitMQ and sending messages directly.</a></p>
+
+<p class="communitylink"><a href="http://blog.avelino.us/2010/10/cron-dentro-do-django-com-celery.html
+">Cron dentro do Django com Celery (Portugese)</a></p>
+
+<p class="communitylink"><a href="http://d.hatena.ne.jp/yuku_t/
+">RabbitMQとCeleryを使ってDjangoでジョブキューしてみる (Japanese)</a></p>
+
+<p class="communitylink"><a href="http://www.scribd.com/doc/37562923/Kaninchen-Schlangen-RabbitMQ-Python
+">Kaninchen & Schlangen: RabbitMQ & Python (German)</a></p>
+
+<p class="communitylink"><a href="http://www.scribd.com/doc/39203296/Celery-Eine-asynchrone-Task-Queue-nicht-nur-fur-Django
+">Celery - Eine asynchrone Task Queue (nicht nur) für Django (German)</a></p>
+
+<p class="communitylink"><a href="http://blog.historio.us/asynchronous-processing-using-celery
+">Asynchronous Processing Using Celery (historio.us)</a></p>
+
+<p class="communitylink"><a href="http://www.slideshare.net/shawnrider/massaging-the-pony-message-queues-and-you
+">"Massaging the Pony: Message Queues and You" (Djangocon 2010)</a></p>
+
+<p class="communitylink"><a href="http://www.slideshare.net/ericholscher/large-problems
+">"Large problems, Mostly Solved" (Djangocon 2010)</a></p>
+
+<p class="communitylink"><a href="http://shawnmilo.blogspot.com/2010/07/simple-celery-with-django-how-to.html
+">A Simple Celery with Django How-To</a></p>
+
+<p class="communitylink"><a href="http://www.davidfischer.name/2010/09/django-and-asynchronous-jobs/
+">Django and asynchronous jobs</a></p>
+
+<p class="communitylink"><a href="http://www.proft.com.ua/2010/09/4/celery-dobavlyaem-parallelizm-v-django/
+">Celery: добавляем параллелизм в Django (Russian)</a></p>
+
+<p class="communitylink"><a href="http://in.pycon.org/2010/static/files/talks/50/mahendra-celery-pycon-2010.pdf
+">Celery presentation at PyCon India 2010 (PDF slides)</a></p>
+
+<p class="communitylink"><a href="http://tumblr.whatupderek.com/post/1072002968/celery-django-and-virtualenv-playing-nice
+">celery, django and virtualenv playing nice.</a></p>
+
+<p class="communitylink"><a href="http://justinvoss.wordpress.com/2010/06/22/django-task-queueing-with-celery/
+">Django Task Queueing with Celery</a></p>
+
+<p class="communitylink"><a href="http://www.slideshare.net/matclayton/django-celery
+">django-celery presentation at DJUGL 2010.</a></p>
+
+<p class="communitylink">
+<a href="http://bitkickers.blogspot.com/2010/07/djangocelery-quickstart-or-how-i.html
+">Django/Celery Quickstart (or, how I learned to stop using cron and love
+celery)</a></p>
+
+<p class="communitylink">
+<a href="http://blog.notdot.net/2010/06/Using-Python-magic-to-improve-the-deferred-API
+">Using Python magic to improve the deferred API</a></p>
+
+<p class="communitylink">
+<a href="http://jasonmbaker.com/how-celery-carrot-and-your-messaging-stack-wo
+">How Celery, Carrot, and your messaging stack work</a></p>
+
+<p class="communitylink">
+<a href="http://ericholscher.com/blog/2010/jun/23/large-problems-django-mostly-solved-delayed-execut/
+">Large Problems in Django, Mostly Solved: Delayed Execution</a></p>
+
+<p class="communitylink">
+
+    <div style="width:425px;text-align:left" id="__ss_2089054">
+    <a style="font:14px Helvetica,Arial,Sans-serif;display:block;
+    margin:12px 0 3px 0;text-decoration:underline;" 
+    href="http://www.slideshare.net/idangazit/an-introduction-to-celery"
+    title="An Introduction to Celery">An Introduction to Celery</a>
+    <object style="margin:0px" width="425" height="355"> <param name="movie"
+    value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=pyweb-celery-090929081406-phpapp01&stripped_title=an-introduction-to-celery" />
+    <param name="allowFullScreen" value="true"/><param name="allowScriptAccess"
+    value="always"/><embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=pyweb-celery-090929081406-phpapp01&stripped_title=an-introduction-to-celery" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355">
+    </embed></object><div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;">View more
+    <a style="text-decoration:underline;"
+    href="http://www.slideshare.net/">documents</a>
+    from <a style="text-decoration:underline;"
+    href="http://www.slideshare.net/idangazit">Idan Gazit</a>.</div></div>
+</p>
+
+<p class="communitylink">
+<a href="http://robertpogorzelski.com/blog/2009/09/10/rabbitmq-celery-and-django/
+">RabbitMQ, Celery and Django</a>
+
+<p>
+Great Celery tutorial by Robert Pogorzelski at his blog "Happy Stream of
+Thoughts"</p>
+
+<p class="communitylink">
+<a href="http://mathematism.com/2010/feb/16/message-queues-django-and-celery-quick-start/
+">Message Queues, Django and Celery Quick Start</a>
+</p>
+
+<p class="communitylink">
+<a href="http://www.turnkeylinux.org/blog/django-celery-rabbitmq
+">Background task processing and deferred execution in Django</a>.
+</p>
+
+<p class="communitylink">
+<a href="http://timbull.com/build-a-processing-queue-with-multi-threading
+">Build a processing queue [...] in less than a day using RabbitMQ and
+Celery</a>
+
+<p class="communitylink">
+<a href="http://www.playingwithwire.com/2009/10/how-to-get-celeryd-to-work-on-freebsd/
+">How to get celeryd to work on FreeBSD</a>
+
+<p>
+Installing multiprocessing on FreeBSD isn't that easy, but thanks to Viktor Petersson
+we now have a step-to-step guide.
+</p>
+
+<p class="communitylink">
+<a href="http://ojs.pythonpapers.org/index.php/tppm/article/viewFile/105/122
+">Web-based 3D animation software (PDF)</a></p>
+<p>
+Indy Chang Liu at ThinkingCactus uses Celery to render animations
+asynchronously.
+</p>
+
+<p class="communitylink">
+<a href="http://stepsandnumbers.com/archive/2010/01/04/queued-storage-backend-for-django/
+">Queued Storage Backend for Django</a>
+</p>
+
+<p class="communitylink">
+<a href="http://www.slideshare.net/hungryblank/rabbitmq-with-python-and-ruby-rupy-2009
+">RabbitMQ with Python and Ruby</a>
+</p>
+    </div>
+
+
+<div class="column side">
+    <h2>Resources</h2>
+
+    <ul>
+        <li><a
+            href="http://wiki.github.com/ask/celery/using">Who's
+            using Celery</a></li>
+        <li><a href="http://wiki.github.com/ask/celery/">Celery
+            Wiki</a></li>
+        <li><a
+            href="http://stackoverflow.com/search?q=celery&tab=newest">Celery
+            questions on Stack Overflow</a></li>
+        <li><a
+            href="http://blog.gmane.org/gmane.comp.python.amqp.celery.user">celery-users
+            mailing list archive</a></li>
+        <li><a href="http://botland.oebfare.com/logger/celery/">IRC Logs
+            for the <code>#celery</code> channel</a></li>
+    </ul>
+    </div>
+    <div style="clear:both"></div>
+    </div>
+
+ <div id="credits">
+   <ul>
+     <li>
+       <strong>Copyright (c) 2009, 2010</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/ -->

+ 2 - 2
docs/homepage/index.html

@@ -30,10 +30,10 @@ pageTracker._trackPageview();
 <body>
 <div id="navbar">
   <div class="iStretch">
-    <div class="link" id="current"><a href="">Home</a></div>
+    <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://celeryq.org/docs/">Documentation</a></div>
-    <div class="link"><a href="http://celeryq.org/docs/getting-started/">Tutorials</a></div>
+    <div class="link"><a href="community.html">Community</a></div>
     <div class="link"><a href="http://pypi.python.org/pypi/celery">Download</a></div>
   </div>
 </div>

+ 3 - 1
docs/includes/resources.txt

@@ -39,7 +39,7 @@ Wiki
 
 http://wiki.github.com/ask/celery/
 
-.. _contributing:
+.. _contributing-short:
 
 Contributing
 ============
@@ -50,6 +50,8 @@ You are highly encouraged to participate in the development
 of `celery`. If you don't like Github (for some reason) you're welcome
 to send regular patches.
 
+See also the Contributing section in the Documentation.
+
 .. _license:
 
 License

+ 1 - 0
docs/index.rst

@@ -15,6 +15,7 @@ Contents:
     configuration
     cookbook/index
     community
+    contributing
     tutorials/index
     faq
     reference/index

+ 1 - 0
docs/userguide/index.rst

@@ -19,3 +19,4 @@
     remote-tasks
     routing
     monitoring
+    optimizing

+ 4 - 3
docs/userguide/optimizing.rst

@@ -30,11 +30,12 @@ Prefetch limit
 The prefetch limit is a limit for how many tasks a worker can reserve
 in advance.  If this is set to zero, the worker will keep consuming
 messages *ad infinitum*, not respecting that there may be other
-available worker nodes that may even be able to process them sooner.
+available worker nodes (that may be able to process them sooner),
+or that the messages may not fit in memory.
 
-In the worker the initial prefetch count is set by multiplying
+The workers initial prefetch count is set by multiplying
 the :setting:`CELERYD_PREFETCH_MULTIPLIER` setting by the number
-of child worker processes.
+of child worker processes.  The default is 4 messages per child process.
 
 If you have many expensive tasks with a long duration you would want
 the multiplier value to be 1, which means it will only reserve one