Поиск…


Вступление

Цель этого сообщения - начать работу с профилирующим узлом 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 : После того, как вы зарегистрировали свой профиль процессора или кучу дампа / моментального снимка или распределение кучи, вы можете просмотреть результаты в том же окне или сохранить их на локальном диске для последующего анализа или сравнения с другими профилями.

Вы можете использовать эти статьи, чтобы узнать, как читать профили:



Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow