ホームページ > 記事 > ウェブフロントエンド > ノードサービスの CPU が高すぎる場合はどうすればよいですか?トラブルシューティングのアイデアについて話しましょう
nodeサービス CPU が高すぎる場合はどうすればよいですか?確認方法は?次の記事では、ノード サービスの CPU が高すぎる場合のトラブルシューティングのアイデアを整理して共有します。
CPU 過剰の問題について同僚が調べるのを手伝ってください。
最後に、トラブルシューティングのアイデアを次のようにまとめました。
一部の問題は、インスタンスを再起動することで解決できます。
最初にインスタンスを再起動します。これは、最初にサービスを利用可能にするために必要な手順です。後続の CPU のサージが依然として速すぎる場合は、最初にコードをロールバックすることを検討する必要があるかもしれません。サージが速くない場合は、ロールバックしてできるだけ早く問題のトラブルシューティングを行う必要はありません
top
[root@*** ~]# top PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 680 root 20 0 2290976 168176 34976 S 30.3 2.0 103:42.59 node 687 root 20 0 2290544 166920 34984 R 26.3 2.0 96:26.42 node 52 root 20 0 1057412 23972 15188 S 1.7 0.3 11:25.97 **** 185 root 20 0 130216 41432 25436 S 0.3 0.5 1:03.44 **** ...
vmstat
[root@*** ~]# vmstat 2 procs -----------memory---------------- ---swap-- -----io---- --system-- -----cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 0 0 0 233481328 758304 20795516 0 0 0 1 0 0 0 0 100 0 0 0 0 0 233480800 758304 20795520 0 0 0 0 951 1519 0 0 100 0 0 0 0 0 233481056 758304 20795520 0 0 0 0 867 1460 0 0 100 0 0 0 0 0 233481408 758304 20795520 0 0 0 20 910 1520 0 0 100 0 0 0 0 0 233481680 758304 20795520 0 0 0 0 911 1491 0 0 100 0 0 0 0 0 233481920 758304 20795520 0 0 0 0 889 1530 0 0 100 0 0
procs r: 多くのプロセスが実行されており、システムが非常にビジーです
bi/bo: ディスクに書き込まれるデータ量は若干多くなりますが、大きなファイルの場合は 10M 以内になるはずです。基本的に心配する必要はありません 小さなファイルであれば 2M 以内です 基本的に正常です
cpu us: 継続的に 50% を超えており、サービスピーク期間中は許容されます。長い間 50 を使用すると、最適化を検討できます。
cpu sy: 実際のカーネル プロセスの割合。ここでの us sy の基準値は 80% です。us sy が 80% を超える場合、CPU が不足している可能性があります。 。
cpu wa: 列は、IO 待機によって占有される CPU 時間の割合を示します。ここでの wa の基準値は 30% です。wa が 30% を超える場合は、ディスクへの大量のランダム アクセスが原因であるか、帯域幅のボトルネックが原因である可能性があります。ディスクまたはディスク アクセス コントローラー (主にブロック操作)
参考リンク: https://www.cnblogs.com/zsql/p/11643750.html
を確認します。インスタンスを再起動しても問題が解決せず、問題がノード プロセスにあると判断される場合は、
オンライン コミットを確認し、コードの差分を確認し、問題が見つかるかどうかを確認します。
この操作方法は私の他の記事と同じですSSR サーバーのメモリ リークをすばやく特定する方法質問 は、
ノードを使用する - と似ています。 -inspect サービスを開始します
オンライン環境のローカル シミュレーション、ビルドを使用しますコードの後に、直接ビルドは使用できない場合があります。環境変数は適切に制御する必要があります
(ファイルのアップロード)、CPU プロファイルのフレーム グラフを取得できます (詳細な使用方法の紹介: www.npmjs.com/package/spe…
#5. ストレス テストの検証
概要
#ノード プロセスが原因であることを確認します
##プロファイラーとコードの差分を組み合わせて原因を特定します
nodejs チュートリアル
!以上がノードサービスの CPU が高すぎる場合はどうすればよいですか?トラブルシューティングのアイデアについて話しましょうの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。