Voor Node.js-ontwikkelaars die background jobs willen draaien zonder de bank te breken: twee infrastructuur-picks die samen een complete queue-stack vormen — Upstash Redis als serverloze backend en Railway als worker-host. Plus een overzicht van Inngest, Trigger.dev en QStash als alternatieven.
Serverloze Redis met free tier en Fixed plans vanaf $10/maand. Ideaal als backend voor BullMQ in serverless- of edge-omgevingen, zonder connection-limits. Upstash raadt een Fixed plan aan omdat BullMQ Redis regelmatig raadpleegt, zelfs zonder queue-activiteit.
Eenvoudige deploy van persistente Node.js-workers voor BullMQ. Toegankelijk prijsmodel, ideaal als aanvulling op de Redis-stack. Railway neemt de infrastructuur uit handen zodat je je kunt richten op job-logica.
Background jobs zijn de stille werkpaarden van elke Node.js-applicatie: e-mails versturen, beelden verwerken, rapporten genereren — alles wat niet in een request-response-cyclus thuishoort. Maar de keuze voor een job-queue hoeft niet duur te zijn. Onder de $100 per maand bestaan uitstekende opties, van open-source bibliotheken tot managed platforms.
In dit artikel vergelijken we vijf tools die elk een ander deploy-model bedienen: serverless-first, traditionele Redis-queues, long-running jobs en HTTP-gebaseerde edge-queues. We pikken er twee uit als formele aanbevelingen — Upstash Redis en Railway — en bespreken daarnaast Inngest, Trigger.dev en QStash als alternatieven.
Recomate kan een commissie verdienen via links in dit artikel. Dit beïnvloedt niet onze beoordeling.
Inngest is een durable workflow- en event-driven platform dat speciaal is ontworpen voor serverless-architecturen zoals Next.js op Vercel. Je definieert functies met step-based workflows, en Inngest handelt retries, scheduling en sleeps af zonder dat je een persistente worker hoeft te draaien.1
Het free tier biedt 50.000 step runs per maand; betaalde abonnementen starten bij $20/maand voor 200.000 step runs.3 Wie volledige controle wil, kan Inngest self-hosten onder de Apache 2.0-licentie.3
Wanneer kiezen? Als je een Next.js- of serverless-first SaaS bouwt en event-driven jobs nodig hebt met retries, schedules en step-based workflows — zonder Redis-workers te beheren.1
Trigger.dev blinkt uit in jobs die lang draaien of rekenintensief zijn, zoals AI-pijplijnen. De v3-architectuur gebruikt geïsoleerde containers per taak, en de visuele timeline geeft je inzicht in elke stap van een uitvoering.1
Het free tier biedt 10.000 maandelijkse runs met 14 dagen geschiedenis. Pro kost $50/maand voor 250.000 runs en 30 dagen geschiedenis; Team is $200/maand voor 1 miljoen runs.2 Self-hosting onder Apache 2.0 is gratis, zonder quota-limieten.2
Wanneer kiezen? Als het werk long-running is, AI-heavy, team-visible of operationeel complex.1
BullMQ is een open-source message queue voor Redis, vertrouwd door duizenden bedrijven die miljarden jobs per dag verwerken.7 De bibliotheek is gratis en ondersteunt Node.js, Bun, Python, Elixir en PHP.7 In productie-omgevingen wordt BullMQ geprezen om zijn betrouwbaarheid vergeleken met alternatieven als Bee-Queue en Agenda.8
De uitdaging met BullMQ is dat het een persistente Redis-instantie nodig heeft. Upstash Redis biedt een serverloze Redis-backend met een free tier voor prototypes, pay-as-you-go-prijzen op $0,20 per 100K commando's, en Fixed plans vanaf $10/maand.6 Let op: BullMQ raadpleegt Redis regelmatig, zelfs zonder queue-activiteit, dus Upstash raadt een Fixed plan aan om onverwachte kosten te voorkomen.5
Wanneer kiezen? Als je al Redis beheert of maximale controle wilt over prioriteiten, concurrency en repeatable jobs — tegen de laagst mogelijke kosten.
QStash, eveneens van Upstash, is een HTTP-gebaseerde message queue die ideaal is voor serverless- en edge-omgevingen. In plaats van een persistente verbinding te onderhouden, stuurt QStash HTTP-callbacks naar je eindpunt.
Het free tier biedt 1.000 berichten per dag. Pay-as-you-go kost $1 per 100.000 berichten; een Fixed plan voor 1 miljoen berichten kost $180/maand.4 Elke delivery-attempt telt als één bericht.4
Wanneer kiezen? Voor webhooks en background jobs op de edge, waar eenvoud en HTTP-native werking belangrijker zijn dan een volwaardige queue-bibliotheek.
BullMQ heeft een persistente Node.js-worker nodig om jobs te verwerken. Railway is een PaaS die dit eenvoudig maakt: deploy je worker met een paar commando's, en Railway beheert de infrastructuur. Het is een toegankelijke aanvulling op de BullMQ + Redis-stack.
| Tool | Prijs | Free tier | Self-host | Deploy-model |
|---|---|---|---|---|
| Inngest | $20/maand (200K runs) | 50K step runs/maand | Apache 2.0 | Serverless |
| Trigger.dev | $50/maand (250K runs) | 10K runs/maand | Apache 2.0 | Container v3 |
| BullMQ + Upstash Redis | $10+/maand (Redis) | Ja (prototypes) | BullMQ ja, Redis nee | Worker + Redis |
| QStash | $1/100K berichten | 1K berichten/dag | Nee | Serverless HTTP |
| Railway | Variabel | Beperkt | Nee | PaaS worker |
Onder de $100 per maand hoef je geen compromissen te sluiten. Inngest wint op developer experience voor serverless; BullMQ biedt maximale controle tegen minimale kosten; Trigger.dev is de keuze voor long-running en AI-heavy workloads; QStash is de simpelste HTTP-gebaseerde queue. De tools die we hier formeel aanbevelen — Upstash Redis en Railway — vormen samen de infrastructuur voor een robuuste, betaalbare BullMQ-stack.
Budget onder de $100 sluit overigens zwaardere oplossingen uit: Temporal Cloud begint bij $200+ en managed RabbitMQ kan $500+ kosten. De hier besproken tools dekken elk relevant pattern — event-driven, traditionele queue, long-running en serverless HTTP — zonder die prijsklasse te betreden.
| Keuze | Prijs | Prijs | Free tier | Zelf-hosten | |
|---|---|---|---|---|---|
Upstash Redis ▶ Keuze | — | Free / $10+ per maand | Ja, voor prototypes | Nee (managed) | Bekijk prijs ↗ |
Railway beste worker-hosting voor bullmq | — | Usage-based | Beperkt | Nee (managed PaaS) | Bekijk prijs ↗ |
Wil je een vervolgvraag die het artikel niet beantwoordde? Vraag de engine — hij draagt de context van het artikel mee.
Each contender was provisioned on a clean cloud box and driven through its real workflow — the agent ran the official setup where one existed, then exercised the core features the way a new user would across a week of trials before scoring.