Node.js
ノードのプロファイリングを開始する
サーチ…
前書き
この記事の目的は、nodejsアプリケーションのプロファイリングを開始し、この結果を理解してバグやメモリリークを捕捉する方法です。アプリケーションを実行するnodejsは、多くの点でブラウザ上で動作するWebサイトに似たv8エンジンプロセスに過ぎず、基本的にノードアプリケーションのWebサイトプロセスに関連するすべてのメトリックを取得できます。
私の好みのツールは、chrome devtoolsまたはchrome inspectorとノードインスペクタを組み合わせたものです。
備考
ノードインスペクタはノードbebugプロセスにアタッチできません。この場合、devtoolsでデバッグブレークポイントを取得できなくなります。devtoolsタブを複数回リフレッシュして、デバッグモードになっているかどうかを数秒待ってください。
再起動しない場合は、コマンドラインからノードインスペクタを再起動します。
単純なノードアプリケーションのプロファイリング
ステップ1 :マシン上にnpmを使用してノードインスペクタパッケージをインストールする
$ npm install -g node-inspector
ステップ2 :ノードインスペクタサーバを起動する
$ node-inspector
ステップ3 :ノードアプリケーションのデバッグを開始する
$ node --debug-brk your/short/node/script.js
ステップ4 :Chromeブラウザでhttp://127.0.0.1:8080/?port=5858を開きます 。また、左パネルにあるnodejsアプリケーションのソースコードとchrom-devツールのインタフェースが表示されます。また、アプリケーションのデバッグ中にデバッグブレークオプションを使用したため、コードの実行はコードの最初の行で停止します。
ステップ5 :これは、プロファイリングタブに切り替えてアプリケーションのプロファイリングを開始する簡単な部分です。特定のメソッドやフローのプロファイルを取得したい場合は、そのコードが実行される直前にコード実行がブレークポイントになっていることを確認してください。
ステップ6 :CPUプロファイルまたはヒープダンプ/スナップショットまたはヒープ割り当てを記録したら、結果を同じウィンドウで表示したり、ローカルドライブに保存して後で分析したり、他のプロファイルと比較することができます。
この記事を使用して、プロファイルを読む方法を知ることができます: