A developer created django-vtasks as a replacement for Celery within the GlitchTip project, aiming for an asyncio-first architecture with support for Valkey and PostgreSQL backends.
The system executes synchronous tasks in threads and, while it does not cover the full range of Celery brokers and features, it offers a solid feature set and demonstrates stronger performance in benchmarks. Its API is also more developer-friendly in async contexts, allowing direct usage such as my_task.aenqueue() without relying on workarounds like sync_to_async.
Compared to alternatives like django-tasks, django-vtasks provides improved performance under high concurrency workloads. The project is positioned as a practical option for developers seeking efficient async task handling, with contributions and feedback encouraged.
1 Comments
cool, does that mean it runs in the same event loop as the asgi server?
It can yes, but you may also run it as a separate process via a manage.py command. The scheduler will also work in either set up, and locks itself to running just once. So it’s safe to scale any way want.