Selaa lähdekoodia

Proofread the faq

Rune Halvorsen 15 vuotta sitten
vanhempi
commit
726c8651bd
1 muutettua tiedostoa jossa 41 lisäystä ja 35 poistoa
  1. 41 35
      FAQ

+ 41 - 35
FAQ

@@ -17,7 +17,7 @@ content-type. The default serialization scheme is pickle because it's the most
 used, and it has support for sending complex objects as task arguments.
 
 You can set a global default serializer, the default serializer for a
-particular Task, and even what serializer to use when sending a single task
+particular Task, or even what serializer to use when sending a single task
 instance.
 
 Is celery for Django only?
@@ -25,28 +25,31 @@ Is celery for Django only?
 
 **Answer:** No.
 
-While django itself is a dependency, you can still use all of celerys features
-outside of a django project.
+While django itself is a dependency, you can still use all of celery's features
+outside of a django project. fixme: question about removing the dependency
+
+
 
 Do I have to use AMQP/RabbitMQ?
 -------------------------------
 
 **Answer**: No.
 
-You can also use Redis or an SQL database, for instructions see `Using other
+You can also use Redis or an SQL database, see `Using other
 queues`_.
 
 .. _`Using other queues`:
     http://ask.github.com/celery/tutorials/otherqueues.html
 
-Redis or a database won't meet up to the standards
-of an AMQP broker. If you have strict reliability requirements you are
-encouraged to use RabbitMQ or another AMQP broker. Redis/database also uses
-pulling, so they are likely to consume more resources. However, if you for
-some reason is not able to use AMQP, feel free to use these alternatives.
+Redis or a database won't perform as well as
+an AMQP broker. If you have strict reliability requirements you are
+encouraged to use RabbitMQ or another AMQP broker. Redis/database also use
+polling, so they are likely to consume more resources. However, if you for
+some reason are not able to use AMQP, feel free to use these alternatives.
 They will probably work fine for most use cases, and note that the above
 points are not specific to celery; If using Redis/database as a queue worked
-fine for you before, it probably will now. And you can always upgrade later.
+fine for you before, it probably will now. You can always upgrade later
+if you need to.
 
 Is celery multi-lingual?
 ------------------------
@@ -61,7 +64,7 @@ messages. There's no other communication involved.
 Also, there's another way to be language indepedent, and that is to use REST
 tasks, instead of your tasks being functions, they're URLs. With this
 information you can even create simple web servers that enable preloading of
-code. For more information about REST tasks see: `User Guide: Remote Tasks`_.
+code. See: `User Guide: Remote Tasks`_.
 
 .. _`User Guide: Remote Tasks`:
     http://ask.github.com/celery/userguide/remote-tasks.html
@@ -119,7 +122,7 @@ I'm having ``IntegrityError: Duplicate Key`` errors. Why?
 **Answer:** See `MySQL is throwing deadlock errors, what can I do?`_.
 Thanks to howsthedotcom.
 
-Why isn't my tasks processed?
+Why aren't my tasks processed?
 -----------------------------
 **Answer:** With RabbitMQ you can see how many consumers are currently
 receiving tasks by running the following command::
@@ -137,7 +140,7 @@ wasn't properly shut down.
 
 When a message is recieved by a worker the broker waits for it to be
 acknowledged before marking the message as processed. The broker will not
-re-send that message to another consumer until the consumer is shutdown
+re-send that message to another consumer until the consumer is shut down
 properly.
 
 If you hit this problem you have to kill all workers manually and restart
@@ -145,12 +148,15 @@ them::
 
     ps auxww | grep celeryd | awk '{print $2}' | xargs kill
 
-You might have to wait a while until all workers has finished the work they're
-doing, if it's still hanging after a long time you can kill them by force
+You might have to wait a while until all workers have finished the work they're
+doing. If it's still hanging after a long time you can kill them by force
 with::
 
     ps auxww | grep celeryd | awk '{print $2}' | xargs kill -9
 
+fixme: killall wont work?
+
+
 Why won't my Task run?
 ----------------------
 
@@ -206,9 +212,9 @@ Brokers
 Can I use celery with ActiveMQ/STOMP?
 -------------------------------------
 
-**Answer**: Yes. But this is somewhat experimental for now.
-It is certainly working ok for me in a test configuration, but it has not
-been tested in production like RabbitMQ. If you have any problems with
+**Answer**: Yes, but this is somewhat experimental for now.
+It is working ok in a test configuration, but it has not
+been tested in production like RabbitMQ has. If you have any problems with
 using STOMP and celery, please report the bugs to the issue tracker:
 
     http://github.com/ask/celery/issues/
@@ -270,7 +276,7 @@ Use the following specific settings in your ``settings.py``:
 Now you can go on reading the tutorial in the README, ignoring any AMQP
 specific options. 
 
-Which features are not supported when using STOMP?
+What features are not supported when using STOMP?
 --------------------------------------------------
 
 This is a (possible incomplete) list of features not available when
@@ -400,7 +406,7 @@ just specify a custom exchange and exchange type:
 Easy? No? If you're confused about these terms, you should read up on
 AMQP and RabbitMQ. It might be hard to grok the concepts of
 queues, exchanges and routing/binding keys at first, but it's all very simple,
-I assure you.
+I assure you. fixme: too colloquial perhaps? Maybe add links to docs
 
 Can I use celery without Django?
 --------------------------------
@@ -408,7 +414,7 @@ Can I use celery without Django?
 **Answer:** Yes.
 
 Celery uses something called loaders to read/setup configuration, import
-modules that registers tasks and to decide what happens when a task is
+modules that register tasks and to decide what happens when a task is
 executed. Currently there are two loaders, the default loader and the Django
 loader. If you want to use celery without a Django project, you either have to
 use the default loader, or write a loader of your own.
@@ -416,7 +422,7 @@ use the default loader, or write a loader of your own.
 The rest of this answer describes how to use the default loader.
 
 First of all, installation. You need to get the development version of
-celery from github::
+celery from github:: fixme: even in 1.0?
 
     $ git clone git://github.com/ask/celery.git
     $ cd celery
@@ -434,7 +440,7 @@ whatever::
 You need a configuration file named ``celeryconfig.py``, either in the
 directory you run ``celeryd`` in, or in a Python library path where it is
 able to find it. The configuration file can contain any of the settings
-described in :mod:`celery.conf`, and in additional if you're using the
+described in :mod:`celery.conf`. In addition; if you're using the
 database backend you have to configure the database. Here is an example
 configuration using the database backend with MySQL:
 
@@ -464,12 +470,12 @@ configuration using the database backend with MySQL:
     # is able to find and run them.
     CELERY_IMPORTS = ("mytaskmodule1", "mytaskmodule2")
     
-Now with this configuration file in the current directory you have to
+With this configuration file in the current directory you have to
 run ``celeryinit`` to create the database tables::
 
     $ celeryinit
 
-Then you should be able to successfully run ``celeryd``::
+At this point you should be able to successfully run ``celeryd``::
 
     $ celeryd --loglevel=INFO
 
@@ -484,19 +490,19 @@ and send a task from a python shell (note that it must be able to import
 The celery test-suite is failing
 --------------------------------
 
-**Answer**: You're running tests from your own Django applicaiton, and celerys
-tests are failing and celerys tests are failing in that context?
+**Answer**: You're running tests from your own Django applicaiton, and celery's
+tests are failing and celery's tests are failing in that context? fixme: I don't get the preceding sentence
 If so, read on for a trick, if not please report the test failure to our issue
-tracker at GitHub.
+tracker on GitHub.
 
     http://github.com/ask/celery/issues/
 
 That Django is running tests for all applications in ``INSTALLED_APPS``
 is a pet peeve of mine. You should use a test runner that either
 
-    1) Explicitly lists the apps you want to run tests for, or
+    1) Explicitly lists the apps you want to run tests for, or:
 
-    2) make a test runner that skips tests for apps you don't want to run.
+    2) Make a test runner that skips tests for apps you don't want to run.
 
 For example this test runner that celery is using:
 
@@ -544,12 +550,12 @@ Can I change the interval of a periodic task at runtime?
 Does celery support task priorities?
 ------------------------------------
 
-**Answer**: No, or theoretically as AMQP supports priorities but
+**Answer**: No. In theory, yes, as AMQP supports priorities. However
 RabbitMQ doesn't implement them yet.
 
-However the usual way to prioritize work in celery, is to route high priority tasks
-to different servers. In the real world this may actually work better than per. message
-priorities. You can use this in combination with rate limting to achieve a
+The usual way to prioritize work in celery, is to route high priority tasks
+to different servers. In the real world this may actually work better than per message
+priorities. You can use this in combination with rate limiting to achieve a
 highly performant system.
 
 Can I schedule tasks to execute at a specific time?
@@ -561,7 +567,7 @@ Can I schedule tasks to execute at a specific time?
 
 However, you can't schedule a periodic task at a specific time yet.
 The good news is, if anyone is willing
-to implement it, it shouldn't be that hard, some pointers to achieve this has
+to implement it, it shouldn't be that hard. Some pointers to achieve this has
 been written here: http://bit.ly/99UQNO