
การแคชด้วย Redis
Cache manager, การผสานรวม Redis, กลยุทธ์การแคช, TTL, การทำให้เป็นโมฆะ, แคชแบบกระจาย
1Redis คืออะไรในบริบทของการแคช?
Redis คืออะไรในบริบทของการแคช?
คำตอบ
Redis (Remote Dictionary Server) เป็นฐานข้อมูล NoSQL แบบ key-value ที่อยู่ในหน่วยความจำ (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 เป็นแบ็กเอนด์ของแคชแทนแคช in-memory เริ่มต้น
3ใช้เมธอดใดในการกำหนดค่า CacheModule กับ Redis แบบ global?
ใช้เมธอดใดในการกำหนดค่า CacheModule กับ Redis แบบ global?
คำตอบ
เมธอด CacheModule.register() กำหนดค่าแคชแบบ local สำหรับโมดูลหนึ่ง ในขณะที่ CacheModule.registerAsync() พร้อม isGlobal: true ทำให้พร้อมใช้งานแบบ global ทั่วทั้งแอปพลิเคชัน วิธีแบบ async ช่วยให้สามารถ inject ConfigService เพื่อดึง URL ของ Redis แบบไดนามิกจากตัวแปรสภาพแวดล้อม การใช้ isGlobal ช่วยหลีกเลี่ยงการ import CacheModule ซ้ำในทุกโมดูลของแอปพลิเคชัน
TTL (Time To Live) คืออะไรในบริบทของแคช Redis?
เดคอเรเตอร์ @UseInterceptors(CacheInterceptor) ใน NestJS มีวัตถุประสงค์อะไร?
+17 คำถามสัมภาษณ์
หัวข้อสัมภาษณ์ Node.js / NestJS อื่นๆ
พื้นฐาน Node.js
Core API ของ Node.js
การเขียนโปรแกรมแบบอะซิงโครนัส
พื้นฐาน Express.js
พื้นฐาน NestJS
การออกแบบ REST API
การตรวจสอบความถูกต้องและ DTO
เอกสาร API และ Contract
การจัดการข้อผิดพลาด
การทดสอบหน่วย (Unit Testing)
การจัดตารางงาน
Module และ DI ของ NestJS
การกำหนดค่าและการจัดการสภาพแวดล้อม
การยืนยันตัวตนด้วย JWT
การให้สิทธิ์และ RBAC
ฐานข้อมูลด้วย TypeORM
Prisma ORM
Middleware และ Interceptor
การอัปโหลดไฟล์
WebSockets
GraphQL กับ NestJS
การทดสอบแบบ End-to-End
คิวด้วย Bull
DevOps, Logging และ CI/CD
Docker และ Containerization
ไมโครเซอร์วิส
แนวทางปฏิบัติที่ดีที่สุดด้านความปลอดภัย
ประสิทธิภาพและการ Deploy บน Cloud
เชี่ยวชาญ Node.js / NestJS สำหรับการสัมภาษณ์ครั้งถัดไป
เข้าถึงคำถามทั้งหมด flashcards แบบทดสอบเทคนิค แบบฝึกหัด code review และตัวจำลองสัมภาษณ์
เริ่มใช้ฟรี