Tìm kiếm trang web

javascript - Cách thiết lập giới hạn bộ nhớ pass max-old-space-size cho Nodejs chạy với gói memory-usage


Tôi đang sử dụng https://www.npmjs.com/package/memory-usage để xem ứng dụng Node của tôi sử dụng bộ nhớ như thế nào, bằng cách chạy 'memory-usage app.js' trong terminal của MACOS. Tuy nhiên, sau một số lần thử nghiệm, nó luôn bị treo ở mức 1,4GB.

Trong lệnh nodejs thông thường, để tăng giới hạn bộ nhớ, tôi chỉ cần sử dụng 'node --max-old-space-size=8192 app.js'. Tuy nhiên, chạy 'memory-usage --max-old-space-size=8192 app.js' sẽ không hoạt động.

Máy Mac của tôi có các thông tin RAM sau:

NGÂN HÀNG 0/DIMM0:

Dung lượng: 4 GB Loại: DDR3 Tốc độ: 1867 MHz

NGÂN HÀNG 1/DIMM0:

Dung lượng: 4 GB Loại: DDR3 Tốc độ: 1867 MHz

Kích thước tối đa mà tôi có thể sử dụng cho ứng dụng Nodejs của mình là bao nhiêu và làm thế nào để thiết lập điều đó với memory-usage?

Cảm ơn bạn.

Câu trả lời #1

Hãy thử thiết lập nó thông qua NODE_OPTIONS:

Unix :

export NODE_OPTIONS="--max-old-space-size=8192" && memory-usage app.js

Windows :

set NODE_OPTIONS="--max-old-space-size=8192" && memory-usage app.js

Câu trả lời #2

Có thể chương trình thực thi sử dụng bộ nhớ đang bỏ qua đối số max-old-space của bạn. Bạn nên tìm cách khắc phục điều đó trong tài liệu của họ. Có vẻ như Node có phân bổ bộ nhớ mặc định là 1G trên các hệ thống 64bit.

Xem chủ đề liên quan (có thể là trùng lặp). Giới hạn việc sử dụng bộ nhớ của node.js

1,4G nghe có vẻ cao với tôi. Tôi tự hỏi liệu bạn có đang bị rò rỉ bộ nhớ ở đâu đó không?

Xem thêm: Cách giám sát việc sử dụng bộ nhớ của Node.js?