skillfed

django-rq

An app that provides django integration for RQ (Redis Queue)

django-rq v4.1.1 1.0M downloads/30d#4,469 on PyPI1,951
Permissive license MIT Active released

What it is and what it does

Django-RQ is a Django app that wraps RQ (a Redis-based Python job queue) and exposes it through Django's configuration and management system. Instead of writing custom queue setup code, you define your queues in Django's settings.py and use simple utility functions like enqueue() and get_queue() to push tasks into the background. It also provides a @job decorator for marking functions as queueable tasks, a management command (rqworker) to run workers, and an admin interface for monitoring queues, jobs, and workers.

The package depends on Django, Redis, and RQ itself. It supports multiple queue configurations (standard Redis, Redis Sentinel, connection pooling) and allows you to customize worker, queue, and job classes. A new admin integration in version 4.0 adds a dashboard for queue statistics, job registry browsing, and optional Prometheus metrics export.

Use it for:

  • Offload long-running tasks (file processing, API calls, reports) from web requests to background workers.
  • Schedule jobs to run at specific times or with delays using RQ's built-in scheduler.
  • Monitor queue health, job status, and worker activity through the Django admin dashboard.
  • Run multiple priority queues (high, default, low) and assign workers to each for load balancing.
  • Manage Redis connections efficiently across multiple queue definitions in a single Django app.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Django-RQ integrates RQ (Redis Queue) with Django, allowing you to configure and manage asynchronous job queues through Django settings and enqueue tasks for background processing.

Yes. Django-RQ is a straightforward, actively maintained solution for adding background job processing to Django projects. It has low install friction, no known vulnerabilities, a permissive MIT license, and a well-established user base. Choose it if you need Redis-backed async tasks with Django integration and prefer a simpler alternative to Celery.

Install

django-rq on PyPI

pip

pip install django-rq

uv

uv add django-rq

poetry

poetry add django-rq

Installing django-rq

Before you install

Low friction installation with a pure-Python wheel. Actively maintained with a recent release and 1951 repository stars. Requires Django 4.2+ and Python 3.10+.

License in practice

MIT license permits commercial and private use with minimal restrictions.

Quickstart

pip install django-rq

# In settings.py, add to INSTALLED_APPS:
INSTALLED_APPS = ['django_rq']

# Configure queues:
RQ_QUEUES = {'default': {'HOST': 'localhost', 'PORT': 6379, 'DB': 0}}

# In your code:
import django_rq
django_rq.enqueue(my_function, arg1, arg2)

Requires a running Redis server; Django 4.2+ and Python 3.10+ are required.

Verify before relying

  • Whether the admin dashboard and Prometheus metrics integration are production-ready or experimental.
  • Performance characteristics when handling high job volumes or large numbers of workers.

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 3 — django, redis, rq
Maintenance actively maintained — 41 days since the last release
Last repo commit
First released
Downloads 1,030,988/month — #4,469 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: django_rq-4.1.1-py3-none-any.whl

Development Status :: 5 - Production/StableEnvironment :: Web EnvironmentFramework :: DjangoIntended Audience :: DevelopersIntended Audience :: End Users/DesktopIntended Audience :: Information TechnologyIntended Audience :: Science/ResearchIntended Audience :: System AdministratorsOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Topic :: InternetTopic :: Internet :: WWW/HTTPTopic :: Scientific/EngineeringTopic :: Software Development :: Libraries :: Python ModulesTopic :: System :: Distributed ComputingTopic :: System :: MonitoringTopic :: System :: Systems Administration

Tags

django background jobs redisasync task queue djangoredis queue django integrationbackground worker management djangojob scheduling django redisasynchronous task processingdjango celery alternative
background-jobsredis-queuedjango-admin

More Scientific/Engineering packages