Tôi đã tự hỏi liệu việc sử dụng require()
trong node.js có tương đương với tải chậm không? Ví dụ: nếu tôi có chức năng yêu cầu gói node.js cụ thể không cần ở bất kỳ nơi nào khác trong mã của tôi, tôi nên sử dụng hàm require()
bên trong hàm đó để bao gồm gói cần thiết chỉ khi chức năng đó được gọi .Tải trọng lười biếng trong node.js
Tôi cũng không chắc liệu điều này có cung cấp bất kỳ cải tiến hiệu suất nào do thiếu hiểu biết về kiến trúc node.js không? Tôi đoán nó sẽ sử dụng ít bộ nhớ hơn cho mỗi kết nối đến máy chủ của tôi. Tuy nhiên nó sẽ tăng I/O vào đĩa khi nó phải đọc gói, hoặc đây sẽ là một cái để có được nó trong bộ nhớ?
Nếu đây là trường hợp tôi nên thực hiện điều này bao lâu, tôi có nên cố gắng viết các gói node.js để có nhiều mã nhất có thể không?
Cảm ơn Peter, điều này đã làm cho nó tất cả có ý nghĩa hơn rất nhiều. –
Tải ban đầu không có ý nghĩa đối với các công cụ CLI (ngoại trừ kiểm tra, nơi bạn có thể tắt tạm thời). – sheerun
@ PeterLyons bạn có thể giải thích cho tôi dòng "Node là đơn luồng nên bộ nhớ của tải một mô-đun không phải là cho mỗi kết nối, đó là mỗi quá trình. Tải một mô-đun là một lần để có được nó vào bộ nhớ". Tôi hiểu những gì một chủ đề duy nhất là, bạn có nghĩa là để nói rằng bất cứ số lượng kết nối đến máy chủ, một mô-đun cụ thể sẽ được nạp chỉ một lần trên toàn bộ ứng dụng? – Deepak