Node.js / NestJS

Черги з Bull

Bull queues, processors, jobs, відкладені jobs, пріоритети, retries, події

20 питань зі співбесід·
Mid-Level
1

Що таке Bull у контексті NestJS?

Відповідь

Bull — це бібліотека Node.js для керування стійкими чергами (queues) на основі Redis. Вона дозволяє виконувати фонові задачі асинхронно, керувати пріоритетами, retries та відкладеними jobs. NestJS надає модуль @nestjs/bull, який нативно інтегрує Bull у модульну архітектуру фреймворка, спрощуючи створення workers та керування важкими або тривалими jobs.

2

Яка роль processor у Bull?

Відповідь

Processor — це функція, яка обробляє jobs з черги. Коли job додається до черги, Bull автоматично викликає відповідний processor для виконання бізнес-логіки. Processor отримує job як параметр і може отримати доступ до даних через job.data. Він може бути синхронним або асинхронним і повинен повертати значення або Promise, щоб сигналізувати про завершення job.

3

Як додати job до черги Bull у NestJS?

Відповідь

Щоб додати job, потрібно інжектувати чергу через @InjectQueue('queueName'), а потім використати метод add(). Цей метод приймає необов'язкові параметри: ім'я job, дані для обробки (payload) та опції на кшталт delay, priority, attempts. Метод повертає Promise зі створеним job та його унікальним ID, що дозволяє відстежувати або маніпулювати ним пізніше.

4

Яку функцію виконує Redis в архітектурі Bull?

5

Як визначити delayed job у Bull?

+17 питань зі співбесід

Інші теми співбесід Node.js / NestJS

Основи Node.js

Junior
20 запитань

Основні API Node.js

Junior
25 запитань

Асинхронне програмування

Junior
25 запитань

Основи Express.js

Junior
20 запитань

Основи NestJS

Junior
23 запитань

Проєктування REST API

Junior
20 запитань

Валідація та DTO

Junior
20 запитань

Документація API та контракти

Junior
20 запитань

Обробка помилок

Junior
20 запитань

Юніт-тестування

Junior
20 запитань

Планування завдань

Junior
15 запитань

Модулі та DI у NestJS

Mid-Level
20 запитань

Конфігурація та керування середовищами

Mid-Level
20 запитань

Автентифікація JWT

Mid-Level
25 запитань

Авторизація та RBAC

Mid-Level
20 запитань

База даних з TypeORM

Mid-Level
30 запитань

Prisma ORM

Mid-Level
25 запитань

Middleware та Interceptors

Mid-Level
20 запитань

Завантаження файлів

Mid-Level
15 запитань

WebSockets

Mid-Level
20 запитань

GraphQL з NestJS

Mid-Level
25 запитань

Наскрізне тестування (End-to-End)

Mid-Level
20 запитань

Кешування з Redis

Mid-Level
20 запитань

DevOps, Logging та CI/CD

Mid-Level
25 запитань

Docker та контейнеризація

Mid-Level
25 запитань

Мікросервіси

Senior
30 запитань

Найкращі практики безпеки

Senior
25 запитань

Продуктивність і хмарне розгортання

Senior
30 запитань

Опануй Node.js / NestJS для наступної співбесіди

Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.

Почни безкоштовно