2
爲了理解的NodeJS的V8發動機的存儲器使用模式,我寫了一個簡單的網絡程序,如下所示:時的NodeJS以及如何堆內存被釋放?
contents of server.js:
var http = require("http");
var server = http.createServer(function(req, res) {
res.write("Hello World");
res.end();
});
server.listen(3000);
當程序正在使用節點server.js啓動後,初始存儲器快照是如下面:
在我一直對這個服務器進行多次URL訪問之後,我可以看到增加了堆使用的模式。更準確地說,每6或7次點擊,就會增加4K。我持續不斷地重複連續兩分鐘,然後這是快照。
我沒有看到堆使用情況有任何最終減少,即使我將它保持空閒而沒有負載。
我的問題是:
這是一種正常的行爲,或者存在一個的NodeJS內存泄漏? 或者,我在理解或錯誤解釋呢?
strongloop通常對的Node.js和V8一些合法的文章。可能要在這一個讀了起來:https://strongloop.com/strongblog/node-js-performance-garbage-collection/和使用一個分析器,顯示GC時間之間的增量,以更好地估算好堆的增加和減少。 – bbuckley123