
Кешування з Redis
Cache manager, інтеграція Redis, стратегії кешування, TTL, інвалідація, розподілений кеш
1Що таке Redis у контексті кешування?
Що таке Redis у контексті кешування?
Відповідь
Redis (Remote Dictionary Server) — це key-value NoSQL база даних, що працює в пам'яті (in-memory) і використовується переважно як розподілений кеш. На відміну від традиційних дискових баз даних, Redis зберігає дані в оперативній пам'яті (RAM), що забезпечує час відгуку на рівні мілісекунд. Він підтримує розширені структури даних, такі як strings, hashes, lists, sets та sorted sets, що робить його дуже гнучким для різних патернів кешування.
2Який npm-пакет встановити для інтеграції Redis у NestJS?
Який 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 з Redis?
Відповідь
Метод CacheModule.register() налаштовує кеш локально для модуля, тоді як CacheModule.registerAsync() з isGlobal: true робить його доступним глобально в усьому застосунку. Асинхронний підхід дозволяє інжектувати ConfigService для динамічного отримання URL Redis зі змінних середовища. Використання isGlobal дозволяє уникнути повторного імпорту CacheModule у кожному модулі застосунку.
Що таке TTL (Time To Live) у контексті кешу Redis?
Яке призначення декоратора @UseInterceptors(CacheInterceptor) у NestJS?
+17 питань зі співбесід
Інші теми співбесід Node.js / NestJS
Основи Node.js
Основні API Node.js
Асинхронне програмування
Основи Express.js
Основи NestJS
Проєктування REST API
Валідація та DTO
Документація API та контракти
Обробка помилок
Юніт-тестування
Планування завдань
Модулі та DI у NestJS
Конфігурація та керування середовищами
Автентифікація JWT
Авторизація та RBAC
База даних з TypeORM
Prisma ORM
Middleware та Interceptors
Завантаження файлів
WebSockets
GraphQL з NestJS
Наскрізне тестування (End-to-End)
Черги з Bull
DevOps, Logging та CI/CD
Docker та контейнеризація
Мікросервіси
Найкращі практики безпеки
Продуктивність і хмарне розгортання
Опануй Node.js / NestJS для наступної співбесіди
Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.
Почни безкоштовно