2012-01-08 5 views
4

При развертывании приложение node.js обращается к ошибкам, связанным с памятью (т. Е. FATAL ERROR: CALL_AND_RETRY_0 Сбой распределения - обработка из памяти). Я хотел бы профилировать мой узел локально, чтобы увидеть, что едет память, но я не уверен, с чего начать.Что такое хороший метод определения утечки памяти в node.js?

+2

Ответ на этот вопрос здесь: http://stackoverflow.com/questions/4918557/ debugging-memory-leaks-with-node-js-server –

+0

Ответ там (используйте профилировщик от инспектора узла) использует мы что-то, помеченное как «ОЧЕНЬ ЭКСПЕРИМЕНТАЛЬНО» и не рекомендованное самим автором. – Zugwalt

ответ

2

Вы можете использовать node-inspector и v8-profiler для этого. Установите его с НПМ:

$ npm install v8-profiler 

И затем использовать его, чтобы взять кучи снимков (из инструкции):

var profiler = require('v8-profiler'); 
var snapshot = profiler.takeSnapshot([name])  //takes a heap snapshot 
+0

v8-profiler в настоящее время отключен для меня: https://github.com/dannycoates/v8-profiler/issues/9 – Zugwalt

+0

Но когда это работает снова, это, вероятно, будет лучшим способом, спасибо! – Zugwalt

Смежные вопросы