Node.js / NestJS

Кешування з Redis

Cache manager, інтеграція Redis, стратегії кешування, TTL, інвалідація, розподілений кеш

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

Що таке Redis у контексті кешування?

Відповідь

Redis (Remote Dictionary Server) — це key-value NoSQL база даних, що працює в пам'яті (in-memory) і використовується переважно як розподілений кеш. На відміну від традиційних дискових баз даних, Redis зберігає дані в оперативній пам'яті (RAM), що забезпечує час відгуку на рівні мілісекунд. Він підтримує розширені структури даних, такі як strings, hashes, lists, sets та sorted sets, що робить його дуже гнучким для різних патернів кешування.

2

Який npm-пакет встановити для інтеграції Redis у NestJS?

Відповідь

Щоб інтегрувати Redis у NestJS, потрібно встановити @nestjs/cache-manager та cache-manager-redis-store (або cache-manager-redis-yet для останніх версій). Пакет @nestjs/cache-manager надає офіційний CacheModule, який інтегрується з системою dependency injection NestJS. Пакет cache-manager-redis-store дозволяє використовувати Redis як бекенд кешу замість стандартного кешу в пам'яті.

3

Який метод використати для глобального налаштування CacheModule з Redis?

Відповідь

Метод CacheModule.register() налаштовує кеш локально для модуля, тоді як CacheModule.registerAsync() з isGlobal: true робить його доступним глобально в усьому застосунку. Асинхронний підхід дозволяє інжектувати ConfigService для динамічного отримання URL Redis зі змінних середовища. Використання isGlobal дозволяє уникнути повторного імпорту CacheModule у кожному модулі застосунку.

4

Що таке TTL (Time To Live) у контексті кешу Redis?

5

Яке призначення декоратора @UseInterceptors(CacheInterceptor) у NestJS?

+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 запитань

Черги з Bull

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 та симуляторів співбесід.

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