skip to navigation
skip to content

Not Logged In

Kuyruk 0.24.2

A distributed task runner

Latest Version: 0.24.3

https://travis-ci.org/cenkalti/kuyruk.png https://coveralls.io/repos/cenkalti/kuyruk/badge.png?branch=master

Kuyruk is a simple and easy way of distributing tasks to run on servers.

It uses RabbitMQ as message broker and depends on Pika which is a pure-Python RabbitMQ client library.

How to install?

Kuyruk is available on PyPI.

$ pip install kuyruk

How to run tests?

Normally you don't need this but it is easy. kuyruk/test directory contains files of both unit and integration tests. Make sure that RabbitMQ is running before running tests. If you want to test failed task saving, make sure Redis is also running. Tests also run on Travis CI automatically on push.

$ git clone git://github.com/cenkalti/kuyruk.git
$ cd kuyruk
$ pip install -r kuyruk/test/requirements.txt
$ pip install --allow-all-external -e .
$ nosetests

How to define tasks?

Instantiate a Kuyruk object somewhere. Then just put a kuyruk.task decorator on top of your function that you want to run in background. After decorating, when you call the function it will send the task to default queue instead of running the function. Since Kuyruk does not support a result backend yet you should not be using the return value of the function.

from kuyruk import Kuyruk

kuyruk = Kuyruk()

@kuyruk.task
def echo(message):
    print message

# This will send a message to queue
echo('Hello, Kuyruk.')

How to run the worker?

Running the worker command with no parameters is enough for processing the tasks in the default queue.

$ kuyruk worker

Where is the documentation?

Here it is: http://kuyruk.readthedocs.org

Bitdeli badge
 
File Type Py Version Uploaded on Size
Kuyruk-0.24.2.tar.gz (md5) Source 2014-01-16 33KB
  • Downloads (All Versions):
  • 382 downloads in the last day
  • 1128 downloads in the last week
  • 5855 downloads in the last month