
คิวด้วย Bull
Bull queues, processors, jobs, jobs ที่หน่วงเวลา, ลำดับความสำคัญ, retries, เหตุการณ์
1Bull คืออะไรในบริบทของ NestJS?
Bull คืออะไรในบริบทของ NestJS?
คำตอบ
Bull เป็นไลบรารี Node.js สำหรับจัดการคิว (queues) แบบถาวรที่อิงกับ Redis ช่วยให้สามารถรันงานเบื้องหลังแบบอะซิงโครนัส จัดการลำดับความสำคัญ retries และ delayed jobs ได้ NestJS มีโมดูล @nestjs/bull ที่รวม Bull เข้ากับสถาปัตยกรรมแบบโมดูลของ framework โดยตรง ทำให้สร้าง workers และจัดการ jobs ที่หนักหรือทำงานยาวนานได้ง่าย
2processor มีบทบาทอย่างไรใน Bull?
processor มีบทบาทอย่างไรใน Bull?
คำตอบ
processor คือฟังก์ชันที่ประมวลผล jobs จาก queue เมื่อมี job ถูกเพิ่มเข้าไปใน queue Bull จะเรียก processor ที่เกี่ยวข้องโดยอัตโนมัติเพื่อรันลอจิกทางธุรกิจ processor รับ job เป็นพารามิเตอร์และสามารถเข้าถึงข้อมูลผ่าน job.data ได้ มันสามารถเป็นแบบ synchronous หรือ asynchronous และต้องคืนค่าหรือ Promise เพื่อแจ้งว่า job เสร็จสมบูรณ์
3จะเพิ่ม job เข้าไปใน queue ของ Bull ใน NestJS ได้อย่างไร?
จะเพิ่ม job เข้าไปใน queue ของ Bull ใน NestJS ได้อย่างไร?
คำตอบ
ในการเพิ่ม job ให้ inject queue ผ่าน @InjectQueue('queueName') แล้วใช้เมธอด add() เมธอดนี้รับพารามิเตอร์เสริม ได้แก่ ชื่อ job, ข้อมูลที่จะประมวลผล (payload) และตัวเลือกเช่น delay, priority, attempts เมธอดจะคืน Promise ที่มี job ที่ถูกสร้างพร้อม ID เฉพาะ ทำให้สามารถติดตามหรือจัดการในภายหลังได้
Redis มีหน้าที่อะไรในสถาปัตยกรรมของ Bull?
จะกำหนด delayed job ใน Bull ได้อย่างไร?
+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
การแคชด้วย Redis
DevOps, Logging และ CI/CD
Docker และ Containerization
ไมโครเซอร์วิส
แนวทางปฏิบัติที่ดีที่สุดด้านความปลอดภัย
ประสิทธิภาพและการ Deploy บน Cloud
เชี่ยวชาญ Node.js / NestJS สำหรับการสัมภาษณ์ครั้งถัดไป
เข้าถึงคำถามทั้งหมด flashcards แบบทดสอบเทคนิค แบบฝึกหัด code review และตัวจำลองสัมภาษณ์
เริ่มใช้ฟรี