You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Vincent Driessen 04c88577ed Bugfix: LPOP does not support multiple queue arguments.
Redis' BLPOP command takes multiple queue arguments, but LPOP can only
take a single queue.  Therefore, we need to loop over all queues
manually, in order, and raise an exception is no more work is available.
13 years ago
examples Adapt examples so they run again. 13 years ago
rq Bugfix: LPOP does not support multiple queue arguments. 13 years ago
tests Refactor the whole Redis connection stuff to be just as easy as in RDB. 13 years ago
.gitignore Add some project meta stuff. 13 years ago
README.md Update header style. 13 years ago
run_tests Add some project meta stuff. 13 years ago
setup.py Make it an actual PyPI-managable Python package. 13 years ago

README.md

WARNING: DON'T USE THIS IN PRODUCTION (yet)

rq — Simple job queues for Python

rq is a lightweight Python job queue, based on Redis.

Putting jobs on queues

To put jobs on queues, first declare a Python function call as a job, like so:

@job('default')
def slow_fib(n):
    if n <= 1:
        return 1
    else:
        return slow_fib(n-1) + slow_fib(n-2)

You can still call the function synchronously:

from fib import slow_fib
slow_fib(4)

You can find an example implementation in the examples/ directory. To run it, open two terminal windows and run the following commands in them:

  1. python example/run_worker.py
  2. python example/run_example.py

This starts two workers and starts crunching the fibonacci calculations in the background, while the script shows the crunched data updates every second.

Installation

Simply use the following command to install the latest released version:

pip install rq

If you want the cutting edge version (that may well be broken), use this:

pip install -e git+git@github.com:nvie/rq.git@master#egg=rq