--- id: django-rq version: "4.1.1" license: MIT license_treatment: permissive maintenance: active --- # django-rq — An app that provides django integration for RQ (Redis Queue) License: permissive · Maintenance: active · Downloads: 1.0M/mo ## 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 above — 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 pip install django-rq uv add django-rq 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_current - Install friction: low - Maintenance: active - Downloads: 1.0M/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags django background jobs redis, async task queue django, redis queue django integration, background worker management django, job scheduling django redis, asynchronous task processing, django celery alternative, background-jobs, redis-queue, django-admin [View on SkillFed](https://skillfed.io/packages/django-rq) · [View on PyPI](https://pypi.org/project/django-rq/)