
Wachtrijen met Bull
Bull queues, processors, jobs, vertraagde jobs, prioriteiten, retries, events
1Wat is Bull in de context van NestJS?
Wat is Bull in de context van NestJS?
Antwoord
Bull is een Node.js-bibliotheek voor het beheren van persistente wachtrijen (queues) op basis van Redis. Het maakt het mogelijk om achtergrondtaken asynchroon uit te voeren en prioriteiten, retries en vertraagde jobs af te handelen. NestJS biedt een @nestjs/bull-module die Bull native integreert in de modulaire architectuur van het framework, waardoor het eenvoudig wordt om workers te maken en zware of langlopende jobs te beheren.
2Wat is de rol van een processor in Bull?
Wat is de rol van een processor in Bull?
Antwoord
Een processor is een functie die jobs uit een queue verwerkt. Wanneer een job aan de queue wordt toegevoegd, roept Bull automatisch de bijbehorende processor aan om de bedrijfslogica uit te voeren. De processor ontvangt de job als parameter en heeft toegang tot de gegevens via job.data. Hij kan synchroon of asynchroon zijn en moet een waarde of Promise teruggeven om de voltooiing van de job aan te geven.
3Hoe voeg je een job toe aan een Bull-queue in NestJS?
Hoe voeg je een job toe aan een Bull-queue in NestJS?
Antwoord
Om een job toe te voegen, injecteer je de queue via @InjectQueue('queueName') en gebruik je vervolgens de add()-methode. Deze methode neemt optionele parameters: een naam voor de job, de te verwerken gegevens (payload) en opties zoals delay, priority, attempts. De methode geeft een Promise terug met de aangemaakte job en zijn unieke ID, waardoor je deze later kunt volgen of manipuleren.
Wat is de functie van Redis in de architectuur van Bull?
Hoe definieer je een delayed job in Bull?
+17 gespreksvragen
Andere Node.js / NestJS-sollicitatieonderwerpen
Node.js-grondbeginselen
Node.js Core-API's
Asynchroon programmeren
Express.js-basis
NestJS-grondbeginselen
REST API-ontwerp
Validatie & DTO
API-documentatie & contracten
Foutafhandeling
Unit testing
Taakplanning
NestJS-modules & DI
Configuratie- en omgevingsbeheer
JWT-authenticatie
Autorisatie en RBAC
Database met TypeORM
Prisma ORM
Middleware en Interceptors
Bestandsupload
WebSockets
GraphQL met NestJS
End-to-end testen
Caching met Redis
DevOps, Logging & CI/CD
Docker en containerisatie
Microservices
Best practices voor beveiliging
Prestaties en cloud-deployment
Beheers Node.js / NestJS voor je volgende gesprek
Krijg toegang tot alle vragen, flashcards, technische tests, code review-oefeningen en gespreksimulatoren.
Begin gratis