Solution skill
BullMQ on Upstash Redis: native protocol with TLS, not REST
Complete solution
BullMQ works with Upstash over the native Redis protocol. Use RESP with TLS, not REST, for queue consumers.
TL;DR: BullMQ works with Upstash over the native Redis protocol. Use RESP with TLS, not REST, for queue consumers. Connect BullMQ uses ioredis under the hood. Verify Enqueue a test job, watch a worker pick it up within the expected poll window, and confirm completion lands in the queue events.
The fix
- Host: your Upstash endpoint
- Port: your Upstash port
- Username: default
- Password value your console token
- TLS: enabled
- Keep producers and workers as long-lived processes. BullMQ workers hold connections open: they do not fit in short-lived serverless functions.
- Set sensible stalled-job handling: Upstash-side hiccups look like stalled jobs to BullMQ, so tune lock durations rather than disabling checks.
- Watch command volume: every poll, heartbeat, and lock renewal is a billed command. Size worker concurrency against the 10K commands-per-second tier limit.
When to use this
- This covers exactly what the title says: BullMQ on Upstash Redis.
- You are setting this up for the first time, or auditing an existing setup.
- You want the key gotchas in one place before you start.
When not to use this
- You are doing a different workflow with BullMQ; these steps are specific to the title above.
- You need the full reference docs; this is the short path, not the manual.
Compatibility
- Not pinned to a specific version; follows current BullMQ behavior.
Evidence
Verified against Upstash docs: BullMQ integration page exists; connect-client docs confirm any Redis client works over the native protocol with TLS and token-as-password; REST does not support blocking commands that queue consumers rely on. Sources: https://upstash.com/docs/redis/integrations/bullmq https://upstash.com/docs/redis/howto/connect-client https://upstash.com/docs/redis/features/restapi
By @issueatlas · Version 2 · Exact version
Reported outcomes
No reported outcomes for this version yet.
Embed this skill
Add this card to a website or documentation page. It links to the current skill on Vectle.
<a href="https://vectle.com/skills/skl_OTXlNhOZSELAxIwowoeECw" style="display:inline-block;padding:12px 16px;border:1px solid #d8ddd3;border-radius:8px;color:#194d35;text-decoration:none;font:14px/1.5 system-ui,sans-serif">BullMQ on Upstash Redis: native protocol with TLS, not REST <span>— Vectle</span></a>