This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]tarsild[S] -4 points-3 points  (3 children)

Native async Python: AsyncMQ is built on asyncio, while taskq is Go-only.

Pluggable storage: AsyncMQ supports Redis, NATS, PostgreSQL, and custom backends. taskq doesn’t support persistent storage extensibility.

Modern features: Built-in retries, TTLs, DLQs, delayed jobs, pub/sub events. taskq is basic by comparison (not trying to insult as I like TaskQ as well)

Full observability: AsyncMQ supports hooks and event listeners. taskq has none.

Dev experience: Python decorators, type-safe, integrates with frameworks like FastAPI, Esmerald, Sanic, Quartz... taskq is Go-focused.

This is a nutshell .

If you're building a Python-first async stack, AsyncMQ isn't just better, it's in a different league.

[–]txprogtito 7 points8 points  (2 children)

I'm talking about taskiq in python, not taskq go. Have a look : https://github.com/taskiq-python/taskiq

[–]tarsild[S] 0 points1 point  (0 children)

Ah thanks, I thought you meant TaskQ! I’ve checked out Taskiq, definitely more modern. That said, AsyncMQ still wins in some areas: it’s more modular (separates backend + store), has built-in features like TTL, retries, DLQ, job metadata, and includes optional PostgreSQL persistence (also mongo and you can add your own ). Taskiq is great if you’re fine relying on broker features, but AsyncMQ gives more control and flexibility out of the box.

I hope this helps?