Node.js / NestJS

Caching với Redis

Cache manager, tích hợp Redis, chiến lược cache, TTL, vô hiệu hóa, cache phân tán

20 câu hỏi phỏng vấn·
Mid-Level
1

Redis là gì trong bối cảnh caching?

Câu trả lời

Redis (Remote Dictionary Server) là một cơ sở dữ liệu NoSQL key-value lưu trong bộ nhớ (in-memory), chủ yếu được dùng làm cache phân tán. Khác với các cơ sở dữ liệu truyền thống dựa trên đĩa, Redis lưu trữ dữ liệu trong RAM, mang lại thời gian phản hồi ở mức mili giây. Nó hỗ trợ các cấu trúc dữ liệu nâng cao như strings, hashes, lists, sets và sorted sets, giúp nó rất linh hoạt cho nhiều mẫu caching khác nhau.

2

Nên cài đặt package npm nào để tích hợp Redis vào NestJS?

Câu trả lời

Để tích hợp Redis vào NestJS, bạn cần cài đặt @nestjs/cache-manager và cache-manager-redis-store (hoặc cache-manager-redis-yet cho các phiên bản gần đây). Package @nestjs/cache-manager cung cấp CacheModule chính thức tích hợp với hệ thống dependency injection của NestJS. Package cache-manager-redis-store cho phép sử dụng Redis làm backend cache thay vì cache in-memory mặc định.

3

Sử dụng phương thức nào để cấu hình CacheModule với Redis một cách toàn cục?

Câu trả lời

Phương thức CacheModule.register() cấu hình cache cục bộ cho một module, trong khi CacheModule.registerAsync() với isGlobal: true làm cho nó khả dụng toàn cục trong toàn bộ ứng dụng. Cách tiếp cận async cho phép inject ConfigService để lấy động URL Redis từ các biến môi trường. Sử dụng isGlobal tránh việc phải import lại CacheModule trong mọi module của ứng dụng.

4

TTL (Time To Live) là gì trong bối cảnh cache Redis?

5

Mục đích của decorator @UseInterceptors(CacheInterceptor) trong NestJS là gì?

+17 câu hỏi phỏng vấn

Nắm vững Node.js / NestJS cho lần phỏng vấn tiếp theo

Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.

Bắt đầu miễn phí