使用「效能」面板剖析 Node.js 效能

Nancy Li
Nancy Li
Dale St. Marthe
Dale St. Marthe

使用「Performance」面板,剖析 Node.jsDeno 應用程式的效能。

什麼是 CPU 設定檔?

CPU 設定檔是一份報表,顯示 CPU 在一段時間內的使用情形。這項工具可顯示哪些程式使用最多 CPU 時間、哪些程序正在執行,以及在各狀態下花費的時間。您可以使用 CPU 分析,找出效能瓶頸,並最佳化 CPU 資源使用率。

開啟 Node 的開發人員工具

  1. 在指令列中執行:

    Node.js

    node --inspect file-name.js

    Deno

    deno --inspect file-name.js
  2. 請透過下列其中一種方式連線至 Node 適用的開發人員工具:

    • 開啟開發人員工具,然後按一下頂端開發人員工具動作列中的綠色「Node」按鈕。
    • 在網址列中輸入 chrome://inspect,然後點選下列其中一個選項:

      • 在「裝置」下方開啟 Node 專用開發人員工具。
      • 在要分析的目標下方按下「檢查」

    所有為 Node 開啟 DevTools 的方法。

分析 CPU

如要分析 CPU,請開啟「Performance」面板,然後兩次按一下「Record」按鈕,開始和結束分析。

「錄製」按鈕和 VM 執行個體選取器。

分析剖析結果

停止錄製後,「效能」面板會在「設定檔」中彙整並顯示錄製相關資料。使用下列分頁來分析剖析資料:

  • 時間軸總覽。位於活動列頂端的活動列下方。在時間軸上顯示 CPU 和 NET 活動圖表。可用於找出效能瓶頸。

    時間軸總覽。

  • 自下而上:使用這個分頁標籤檢查所選錄製片段,並查看個別活動所花費的總時間。

    「由下往上」分頁。

  • 呼叫樹狀圖:這個分頁會顯示所選錄製內容的根活動。根活動也有巢狀呼叫堆疊。您可以使用這個分頁,找出造成最多工作量的活動。

    「Call Tree」分頁。

  • 事件記錄:這個分頁會按照錄製部分的活動發生順序列出活動。

    「事件記錄」分頁。

使用 console.profile() 指令剖析設定檔

您可以使用 console.profile() 指令,透過 DevTools 分析 JavaScript CPU 效能。您可以將這個指令新增至程式碼,然後執行檔案,或是複製程式碼並貼到主控台。「成效」面板會顯示結果。

如要使用這項指令,請按照下列步驟操作:

  1. 請使用 console.profile()console.profileEnd() 括住程式碼,例如:

    console.profile( profile ${i} );
    // Code to be profiled
    doSomething();
    console.profileEnd();
    
  2. 您可以使用下列任一方式執行程式碼:

設定檔完成後,結果會自動顯示在「成效」面板中。