高いCPU Linuxサーバの下で

サーバーに報告CPUが高すぎると、すぐに簡単に表示する特定の問題のためにスタック情報をエクスポートするには、次のコマンドを使用します。

異常なプロセスを見つけるためにtopコマンドを使用します。あなたは12836 CPUとメモリの使用状況を見ることができる非常に高く、

この時点で、あなたはその後のps -efを実行することができます|グレップのJava、Javaは、プロセスによって占有されているアプリケーションを参照した結果で、プロセス12836のプロセスIDを見つけ、すべてのプロセスを参照してください。

異常なスレッドを表示するには、トップ-H -pプロセスIDを使用します

使用のprintf「%X \ n」は、異常なスレッドのスレッド数は16進数に変換します

プロセスID jstack使用|エラーコードの位置を突き止めるために-A90異常スレッドgrepの16進数を(最後-A90は、ログ行の数であり、また、テキストファイル、または他のデジタルに出力することができます)。あなたは、エラーコードの位置を確認することができます。

注意事項:

-bashプロンプトが表示された場合:jstack:コマンドが見つからない、あなたは、JDKのディレクトリを見つけるのbinディレクトリに移動することができ、

        grepの16進数-A90異常なスレッドであることができる|は、実装プロセスIDで./Jstack。

   
プロンプトが表示され、よく知られているファイルはセキュリティで保護されていない場合、それは問題のアカウント権限ためです。/ tmp / hsperfdata_ $ USER /ディレクトリには、名前付きプロセスIDファイルには、我々はjmapのを実行するかjstackシリアの情報に表示され、このファイルは同じに属するユーザーコマンドとユーザーhsperfdata_する$ USER場合、実行を確認するとき、ありましたそうでない場合は、に準拠するように実行を切り替えます。実行します。sudo -u特権アカウント./jstackプロセスID | grepを16進数の-A50異常スレッドがすることができます。

参考文献:https://blog.csdn.net/chenjunan888/article/details/80447800

おすすめ

転載: www.cnblogs.com/1234cjq/p/11264212.html