Câu hỏi phỏng vấn Node.js
Câu hỏi

Tăng cường hiệu suất Node.js thông qua cluster như thế nào?

Câu trả lời

Trong Node.js, việc sử dụng cluster giúp tăng cường hiệu suất ứng dụng bằng cách tận dụng nhiều lõi CPU trên máy chủ. Một instance của Node.js chạy trên một luồng đơn (single thread), điều này có nghĩa là trên một hệ thống đa lõi, không phải tất cả các lõi CPU đều được sử dụng bởi ứng dụng. Để tận dụng các lõi CPU khác, bạn có thể khởi chạy một cluster của các tiến trình Node.js và phân phối tải giữa chúng.

Module cluster trong Node.js cho phép tạo ra các tiến trình con (child processes) chạy đồng thời và chia sẻ cùng một cổng máy chủ (server port). Mỗi tiến trình con có event loop, bộ nhớ và instance V8 riêng của mình. Các tiến trình con sử dụng IPC (Inter-process communication) để giao tiếp với tiến trình Node.js chính.

Khi sử dụng các tiến trình con, bạn có thể cải thiện throughput (số lượng yêu cầu mỗi giây) của máy chủ vì nhiều khách hàng có thể được phục vụ cùng một lúc. Nếu một tiến trình con bận rộn với một yêu cầu nặng, các tiến trìn...

middle

middle

Gợi ý câu hỏi phỏng vấn

expert

libuv hoạt động như thế nào?

middle

Khi nào tôi nên sử dụng EventEmitter trong Nodejs?

expert

Giải thích một số cách xử lý lỗi trong Node.js mà bạn biết. Bạn thích sử dụng cách nào?

Bình luận

Chưa có bình luận nào