Node.js / NestJS

Hiệu năng và triển khai Cloud

Event loop, blocking I/O, profiling, memory leaks, tối ưu query, nén, clustering, worker threads, load balancing, caching chiến lược (Redis + HTTP), AWS (ECS, Lambda), serverless, chiến lược deployment (blue/green, canary)

30 câu hỏi phỏng vấn·
Senior
1

Cách tiếp cận nào tối ưu việc triển khai container NestJS trong AWS ECS?

Câu trả lời

Để tối ưu việc triển khai ECS cho container NestJS: dùng multi-stage Docker builds để giảm kích thước image cuối (build stage + production stage tối thiểu), tận dụng Docker layer caching để tăng tốc build, dùng ECR (Elastic Container Registry) cùng region để giảm latency, cấu hình health checks phù hợp, dùng Fargate để đơn giản hóa quản lý, định nghĩa resource limits (CPU/memory) tối ưu, triển khai graceful shutdown cho SIGTERM. Một image Node.js alpine được tối ưu có thể <100MB so với >1GB khi không tối ưu.

2

Các pha chính của event loop trong Node.js là gì?

Câu trả lời

Event loop của Node.js có sáu pha chính: timers (setTimeout/setInterval), pending callbacks (các I/O callback bị trì hoãn), idle/prepare (nội bộ), poll (lấy các sự kiện I/O mới), check (setImmediate), và close callbacks. Mỗi pha có một hàng đợi FIFO các callback để thực thi. Pha poll quan trọng nhất vì nó xử lý các sự kiện I/O.

3

Tác động của một thao tác chặn (blocking I/O) trong Node.js là gì?

Câu trả lời

Một thao tác chặn trong Node.js sẽ chặn toàn bộ event loop, ngăn tất cả các thao tác khác được xử lý. Điều này làm giảm hiệu năng nghiêm trọng vì Node.js là đơn luồng. Các thao tác đồng bộ như fs.readFileSync, crypto.pbkdf2Sync, hoặc các vòng lặp nặng sẽ chặn thread chính. Luôn dùng phiên bản bất đồng bộ hoặc ủy thác cho worker threads.

4

Làm thế nào để xác định memory leak trong ứng dụng Node.js ở môi trường production?

5

Dùng công cụ nào để profiling hiệu năng CPU trong ứng dụng NestJS?

+27 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í