Node.js
Начало работы с профилированием узлов
Поиск…
Вступление
Цель этого сообщения - начать работу с профилирующим узлом applicationjs и понять, как это сделать, чтобы зафиксировать ошибку или утечку памяти. Приложение, выполняющее nodejs, является ничем иным, как процессами v8 engine, которые во многом совпадают с веб-сайтом, запущенным в браузере, и мы можем в основном захватить все показатели, связанные с процессом веб-сайта для приложения-узла.
Инструментом моего предпочтения является chrome devtools или chrome inspector в сочетании с инспектором узлов.
замечания
Инспектор узлов не может присоединяться к процессу bebug узла, иногда в этом случае вы не сможете получить контрольную точку debug в devtools. Повторите обновление вкладки devtools несколько раз и подождите несколько секунд, чтобы увидеть, находится ли она в режиме отладки.
Если не перезапустить инспектор узлов из командной строки.
Профилирование простого узла
Шаг 1 : Установите пакет инспектора узлов, используя npm глобально на вашей машине
$ npm install -g node-inspector
Шаг 2. Запустите сервер узла-инспектора.
$ node-inspector
Шаг 3. Запустите отладку приложения узла.
$ node --debug-brk your/short/node/script.js
Шаг 4 : Откройте http://127.0.0.1:8080/?port=5858 в браузере Chrome. И вы увидите интерфейс инструментов chrom-dev с исходным кодом приложения nodejs на левой панели. И поскольку мы использовали опцию отладки при отладке приложения, выполнение кода останавливается в первой строке кода.
Шаг 5 : Это легкая часть, на которой вы переключаетесь на вкладку профилирования и начинаете профилирование приложения. В случае, если вы хотите получить профиль для определенного метода или потока, убедитесь, что выполнение кода разломано перед тем, как этот фрагмент кода будет выполнен.
Шаг 6 : После того, как вы зарегистрировали свой профиль процессора или кучу дампа / моментального снимка или распределение кучи, вы можете просмотреть результаты в том же окне или сохранить их на локальном диске для последующего анализа или сравнения с другими профилями.
Вы можете использовать эти статьи, чтобы узнать, как читать профили: