Node.js / NestJS

Wachtrijen met Bull

Bull queues, processors, jobs, vertraagde jobs, prioriteiten, retries, events

20 gespreksvragen·
Mid-Level
1

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.

2

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.

3

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.

4

Wat is de functie van Redis in de architectuur van Bull?

5

Hoe definieer je een delayed job in Bull?

+17 gespreksvragen

Beheers Node.js / NestJS voor je volgende gesprek

Krijg toegang tot alle vragen, flashcards, technische tests, code review-oefeningen en gespreksimulatoren.

Begin gratis