15
submitted 2 weeks ago by bufke@lemmy.today to c/python@programming.dev

I built django-vtasks to replace Celery (task queue) in my open source project, GlitchTip. I wanted something with an asyncio-first approach that supports Valkey and Postgres backends. Sync tasks run in threads. We don't support every Celery broker and feature, but I think we have a good feature set and we outperform Celery in benchmarks. Being able to run my_task.aenqueue() is friendlier than doing this in Celery from an async view. It allows for a true asyncio valkey call, not sync_to_async. I found django-tasks not performant enough, as I need high concurrency. (As I understand, Django Tasks is modeled off of that project, so thank you to django-tasks folks). If this sounds useful, give it a try. Or better yet, submit a bug report or merge request.

top 2 comments
sorted by: hot top controversial new old
[-] eager_eagle@lemmy.world 1 points 2 weeks ago

cool, does that mean it runs in the same event loop as the asgi server?

[-] bufke@lemmy.today 2 points 2 weeks ago* (last edited 2 weeks ago)

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.

this post was submitted on 11 Feb 2026
15 points (100.0% liked)

Python

7779 readers
1 users here now

Welcome to the Python community on the programming.dev Lemmy instance!

📅 Events

PastNovember 2023

October 2023

July 2023

August 2023

September 2023

🐍 Python project:
💓 Python Community:
✨ Python Ecosystem:
🌌 Fediverse
Communities
Projects
Feeds

founded 2 years ago
MODERATORS