A very fast valkey/postgres django tasks backend.
Project description
django-vtasks
Valkey Tasks. Very Fast Tasks.
From the team at GlitchTip, django-vtasks is a lightweight, async-first task queue for Django 6.0+.
Status: Newly feature complete. Beta quality. Use and report bugs.
Why django-vtasks?
- Async-first - Native
asyncioworker for high-performance I/O - Flexible backends - Start with Postgres, scale to Valkey without rewriting code
- Lightweight - Minimal dependencies, modern codebase
- Embedded mode - Run tasks in your ASGI server or as standalone workers
Features
- Dual backends: Database (Postgres/SQLite/MySQL) and Valkey (Redis-compatible)
- Scheduled tasks with cron syntax
- Unique tasks (Mutex and Throttle patterns)
- Batch processing for high-throughput queues
- Prometheus metrics
- Django admin interface for task management
Requirements
- Python 3.12+
- Django 6.0+
- Valkey 7+ (or Redis 7+) for Valkey backend
Quick Start
pip install django-vtasks
# settings.py
INSTALLED_APPS = ["django_vtasks", "django_vtasks.db"]
TASKS = {
"default": {
"BACKEND": "django_vtasks.backends.db.DatabaseTaskBackend",
}
}
# myapp/tasks.py
from django_vtasks import task
@task
def send_email(user_id):
# Your task logic
pass
# In your views
send_email.enqueue(user_id)
# or async
await send_email.aenqueue(user_id)
# Run the worker
python manage.py runworker
Performance
Benchmarks show django-vtasks outperforms Celery in both enqueue and processing throughput:
- 1.9x faster enqueue (~1,200 ops/s vs ~650 ops/s)
- 1.5x faster processing (~250 ops/s vs ~166 ops/s)
See Benchmarks for full methodology and results.
Documentation
Full documentation is available at django-vtasks.glitchtip.com
- Getting Started
- Guide - Unique tasks, batching, scheduling, and more
- Configuration - All settings reference
- Deployment - Standalone workers, embedded mode, Kubernetes
- Benchmarks - Performance comparison with Celery
Contributing
We welcome contributions! Please see CONTRIBUTING.md for details.
Built by the GlitchTip team.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file django_vtasks-1.0.3.tar.gz.
File metadata
- Download URL: django_vtasks-1.0.3.tar.gz
- Upload date:
- Size: 28.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3d701cbeebbfe4598e96444e827cb928f55bafb7c40eba719cb6e0805c1aa6ea
|
|
| MD5 |
47f5bbb8c3b392f2dd37099ea8135a9a
|
|
| BLAKE2b-256 |
3936938135cb01f5f5a3ecd595446e5189859aaf6857602bd28dd957c3a620ad
|
File details
Details for the file django_vtasks-1.0.3-py3-none-any.whl.
File metadata
- Download URL: django_vtasks-1.0.3-py3-none-any.whl
- Upload date:
- Size: 41.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
857b3dd9684a58fa0f683996cefd6485e5acfc018a8b43bddb3752d7a9fba548
|
|
| MD5 |
af1cf1d0ed0cd67863a4f88d59121b41
|
|
| BLAKE2b-256 |
c3b739072927f058256bacb1da2cd0e48c1404198c2663be8a4a0a5b03c154e7
|