
ไมโครเซอร์วิส
Monolith vs modular monolith vs microservices, message patterns, transporters (TCP, Redis, NATS, RabbitMQ, Kafka), การสื่อสาร (sync/async, event-driven), CQRS, event sourcing, client/server
1Modular monolith คืออะไร?
Modular monolith คืออะไร?
คำตอบ
Modular monolith คือแอปพลิเคชันที่ deploy เป็นหน่วยเดียวแต่มีโครงสร้างเป็นโมดูลที่ decoupled อย่างชัดเจนพร้อม boundaries ที่ชัดเจน ต่างจาก monolith แบบดั้งเดิมที่ทุกอย่างปะปนกัน modular monolith จัดระเบียบโค้ดเป็นโมดูลอิสระที่สื่อสารผ่าน interface ที่กำหนดไว้อย่างชัดเจน แนวทางนี้ผสานความเรียบง่ายของ monolith (deploy เดียว, transaction ACID ที่เรียบง่าย) เข้ากับความสามารถในการบำรุงรักษาของ microservices (การแยกความรับผิดชอบ, boundaries ที่ชัดเจน)
2ความแตกต่างหลักระหว่าง monolith และ microservices คืออะไร?
ความแตกต่างหลักระหว่าง monolith และ microservices คืออะไร?
คำตอบ
ความแตกต่างหลักอยู่ที่การ deploy และความเป็นอิสระ: monolith ถูก deploy เป็นหน่วยเดียวที่ทุกคอมโพเนนต์ใช้ process และฐานข้อมูลร่วมกัน ขณะที่ microservices เป็นบริการอิสระที่ deploy แยกกันพร้อมฐานข้อมูลของตัวเอง monolith ให้ความเรียบง่ายและ transaction ACID ที่ง่าย แต่เผชิญปัญหาด้านความสามารถในการขยายและการบำรุงรักษาในระดับใหญ่ microservices ช่วยให้ขยายได้อย่างอิสระและ deploy แบบอัตโนมัติ แต่นำมาซึ่งความซับซ้อนแบบกระจาย
3message pattern ใน NestJS Microservices คืออะไร?
message pattern ใน NestJS Microservices คืออะไร?
คำตอบ
message pattern ใน NestJS กำหนดโหมดการสื่อสารระหว่าง microservices มีสองประเภทหลัก: request-response (แบบ synchronous ที่รอการตอบกลับ) และ event-based (แบบ asynchronous ที่ไม่รอการตอบกลับ) decorator @MessagePattern() กำหนด handler สำหรับ request-response ขณะที่ @EventPattern() จัดการ event แบบ asynchronous การเลือก pattern ขึ้นอยู่กับกรณีการใช้งาน: request-response สำหรับการดำเนินการที่ต้องการการตอบกลับทันที, event-based สำหรับการแจ้งเตือนและ eventual consistency
transporter ใน NestJS Microservices มีบทบาทอะไร?
ความแตกต่างระหว่าง @MessagePattern() และ @EventPattern() คืออะไร?
+27 คำถามสัมภาษณ์
หัวข้อสัมภาษณ์ 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
คิวด้วย Bull
DevOps, Logging และ CI/CD
Docker และ Containerization
แนวทางปฏิบัติที่ดีที่สุดด้านความปลอดภัย
ประสิทธิภาพและการ Deploy บน Cloud
เชี่ยวชาญ Node.js / NestJS สำหรับการสัมภาษณ์ครั้งถัดไป
เข้าถึงคำถามทั้งหมด flashcards แบบทดสอบเทคนิค แบบฝึกหัด code review และตัวจำลองสัมภาษณ์
เริ่มใช้ฟรี