Ask Solem 15 лет назад
Родитель
Сommit
28b00b66d9
1 измененных файлов с 68 добавлено и 28 удалено
  1. 68 28
      docs/releases/1.0/announcement.rst

+ 68 - 28
docs/releases/1.0/announcement.rst

@@ -4,19 +4,36 @@
 
 
 We're happy to announce the release of Celery 1.0.
 We're happy to announce the release of Celery 1.0.
 
 
+What is it?
+===========
+
+Celery is a task queue/job queue based on distributed message passing.
+It is focused on real-time operation, but has support for scheduling as well.
+
+The execution units, called tasks, are executed concurrently on one or
+more worker servers, asynchronously (in the background) or synchronously
+(wait until ready).
+
+Celery is already used in production to process millions of tasks a day.
+
+It was first created for Django, but is now also usable from Python. It can
+also operate with other languages via webhooks.
+
 Stable API
 Stable API
 ==========
 ==========
 
 
-From this version on the API will be considered stable. This means there won't be any backwards
-incompatible changes to new minor versions. Changes to the API needs to be
-deprecated; so, for example, if we decided to remove a function that existed in Celery 1.0:
+From this version on the API will be considered stable. This means there won't
+be any backwards incompatible changes to new minor versions. Changes to the
+API needs to be deprecated; so, for example, if we decided to remove a function
+that existed in Celery 1.0:
 
 
 * Celery 1.2 will contain a backwards-compatible replica of the function which
 * Celery 1.2 will contain a backwards-compatible replica of the function which
   will raise a ``PendingDeprecationWarning``.
   will raise a ``PendingDeprecationWarning``.
-  This warning is silent by default; you need to explicitly turn on display of these warnings.
-* Celery 1.4 will contain the backwards-compatible replica, but the warning will be promoted to
-  a full-fledged ``DeprecationWarning``. This warning is loud by default, and will likely be
-  quite annoying.
+  This warning is silent by default; you need to explicitly turn on display
+  of these warnings.
+* Celery 1.4 will contain the backwards-compatible replica, but the warning
+  will be promoted to a full-fledged ``DeprecationWarning``. This warning
+  is loud by default, and will likely be quite annoying.
 * Celery 1.6 will remove the feature outright.
 * Celery 1.6 will remove the feature outright.
 
 
 See the `Celery Deprecation Timeline`_ for a list of pending removals.
 See the `Celery Deprecation Timeline`_ for a list of pending removals.
@@ -29,14 +46,13 @@ What's new?
 
 
 * New periodic task service.
 * New periodic task service.
 
 
-  Periodic tasks are no longer dispatched by ``celeryd``, but by a separate
-  service called ``celerybeat``. This is an optimized, centralized service
-  dedicated to your periodic tasks, which means you don't have to
+  Periodic tasks are no longer dispatched by ``celeryd``, but instead by a
+  separate service called ``celerybeat``. This is an optimized, centralized
+  service dedicated to your periodic tasks, which means you don't have to
   worry about deadlocks or race conditions any more. But, also it means you
   worry about deadlocks or race conditions any more. But, also it means you
-  have to make sure only one instance of the service is running at any one
+  have to make sure only one instance of this service is running at any one
   time.
   time.
 
 
-
   **TIP:** If you're only running a single ``celeryd`` server, you can embed
   **TIP:** If you're only running a single ``celeryd`` server, you can embed
   ``celerybeat`` inside it. Just add the ``--beat`` argument.
   ``celerybeat`` inside it. Just add the ``--beat`` argument.
 
 
@@ -44,7 +60,9 @@ What's new?
 
 
     Registering the tasks manually was getting tedious, so now you don't have
     Registering the tasks manually was getting tedious, so now you don't have
     to anymore. However -- You can still do it manually if you need to, just
     to anymore. However -- You can still do it manually if you need to, just
-    disable :attr:`Task.autoregister`.
+    disable :attr:`Task.autoregister`. The concept of abstract task classes
+    has also been introduced, this is like django models, where only the
+    subclasses of an abstract task is registered.
 
 
 * Awesome new task decorators
 * Awesome new task decorators
 
 
@@ -60,23 +78,27 @@ What's new?
 * Rate limiting
 * Rate limiting
 
 
     Global and per task rate limits. 10 tasks a second? or one an hour? You
     Global and per task rate limits. 10 tasks a second? or one an hour? You
-    got it. It's using the awesome bucket queue algorithm, which is commonly
-    used for network traffic shaping. It accounts for bursts of activity, so
-    your workers won't be bored by having nothing to do.
+    got it. It's using the awesome `token bucket algorithm`_, which is
+    commonly used for network traffic shaping. It accounts for bursts of
+    activity, so your workers won't be bored by having nothing to do.
+
+.. _`token bucket algorithm`: http://en.wikipedia.org/wiki/Token_bucket
 
 
 * Broadcast commands
 * Broadcast commands
 
 
-    You can now revoke tasks if you suddenly change your mind and don't want to run
-    the task anyway, or you can rate limit tasks or shut down the worker remotely.
+    You can now revoke tasks if you suddenly change your mind and don't want
+    to run the task anyway, or you can rate limit tasks or even shut down the
+    worker remotely.
 
 
-    It doesn't have many commands yet, but we're waiting for broadcast commands to
-    reach its full potential. Maybe you have some ideas of your own?
+    It doesn't have many commands yet, but we're waiting for broadcast
+    commands to reach its full potential. There's a lot of potential here,
+    so please share your ideas if you have any.
 
 
 * Multiple queues
 * Multiple queues
 
 
     The worker is now able to receive tasks on multiple queues at once. This
     The worker is now able to receive tasks on multiple queues at once. This
-    means you can route tasks to arbitrary workers. Read about the insane
-    routing powers of AMQP, and you will surely end up being mighty impressed.
+    means you can route tasks to arbitrary workers. Read about the wicked
+    routing powers of AMQP, and you will surely end up mighty impressed.
 
 
 * Platform agnostic message format.
 * Platform agnostic message format.
 
 
@@ -93,12 +115,30 @@ What's new?
 
 
 * Plus a lot more
 * Plus a lot more
 
 
-To read more about these and other changes in detail, please refer to the `changelog`_.
-This document contains crucial information, so if you're upgrading from a previous version of Celery,
-be sure to read the entire change set before you continue.
+To read more about these and other changes in detail, please refer to
+the `changelog`_. This document contains crucial information, so if you're
+upgrading from a previous version of Celery, be sure to read the entire
+change set before you continue.
 
 
 .. _`changelog`: http://ask.github.com/celery/changelog.html
 .. _`changelog`: http://ask.github.com/celery/changelog.html
 
 
-**TIP:** If you install the :mod:`setproctitle` module you can see which task each
-worker process is currently executing in ``ps`` listings. Just install it
-using pip: ``pip install setproctitle``.
+**TIP:** If you install the :mod:`setproctitle` module you can see which
+task each worker process is currently executing in ``ps`` listings.
+Just install it using pip: ``pip install setproctitle``.
+
+Resources
+=========
+
+* Homepage: http://celeryproject.org
+
+* Download: http://pypi.python.org/pypi/celery
+
+* Documentation: http://celeryproject.org/docs/
+
+* Changelog: http://celeryproject.org/docs/changelog.html
+
+* Code: http://github.com/ask/celery/
+
+* Mailing-list: http://groups.google.com/celery-users
+
+* IRC: #celery on irc.freenode.net.