| taskQ | vmihailenco/taskq |
oshankkumar/taskqueue-go |
|
|---|---|---|---|
| Payload type safety | Generics: Task[T]/Handler[T]/Queue[T], compile-time checked |
Reflection-based task registry, string task names | Concrete *Job with a JSON payload |
| Backends | In-memory, Redis Streams, Postgres (SKIP LOCKED) |
Redis, SQS, IronMQ, in-memory | Redis (Postgres/MySQL job-store on the roadmap, not shipped) |
| Crash recovery | Built into every backend (XAUTOCLAIM, Postgres lease expiry) |
Backend-dependent (SQS/IronMQ visibility timeout) | Redis Lua-script atomic dequeue plus visibility timeout |
| Cross-backend conformance | One shared suite (taskqtest) every backend must pass |
Not present | Not present (single backend today) |
| Middleware | Chain() composition: logging, panic recovery, OpenTelemetry |
Fallback handler for failed messages | Not documented |
| Delayed / scheduled delivery | Not yet (roadmap item) | — | Built in |
| Multi-step workflows / sagas | Yes, via Saga[S] with automatic reverse-order compensation |
No | No |
| Web dashboard | No | No | Yes: queue/job monitoring, retry/delete from the UI |
| Maturity | New, pre-1.0 | ~1.3k GitHub stars; production use (built by the Uptrace team) | Early-stage, small |
| License | MIT | BSD-2-Clause | MIT |
Created
September 7, 2026 05:15
-
-
Save sajanv88/5163c11f20404a1b3962c36ee8eca605 to your computer and use it in GitHub Desktop.
How taskQ compares
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment