Installation
============
.. py:currentmodule:: django_q
- Install the latest version with pip::
$ pip install django-q
- Add :mod:`django_q` to ``INSTALLED_APPS`` in your projects :file:`settings.py`::
INSTALLED_APPS = (
# other apps
'django_q',
)
- Run Django migrations to create the database tables::
$ python manage.py migrate
- Make sure you have a `Redis `__ server running
somewhere and know how to connect to it.
Requirements
------------
Django Q is tested for Python 2.7 and 3.4
- `Django `__
Django Q aims to use as much of Django's standard offerings as possible
The code is tested against Django version `1.7.10` and `1.8.4`.
- `Django-picklefield `__
Used to store args, kwargs and result objects in the database.
- `Redis-py `__
Andy McCurdy's excellent Redis python client.
- `Arrow `__
The scheduler uses Chris Smith's wonderful project to determine correct dates in the future.
- `Blessed `__
This feature-filled fork of Erik Rose's blessings project provides the terminal layout of the monitor.
- `Redis server `__
Django Q uses Redis as a centralized hub between your Django instances and your Q clusters.
Optional
~~~~~~~~
.. _psutil:
- `Psutil `__ python system and process utilities module by Giampaolo Rodola', is an optional requirement and adds cpu affinity settings to the cluster::
$ pip install psutil
- `Hiredis `__ parser. This C library maintained by the core Redis team is faster than the standard PythonParser during high loads::
$ pip install hiredis