序文 Linux 運用保守エンジニアとして、日々の業務の中で Linux サーバーの CPU 負荷が 100% に達し、高い状態が続く状況に遭遇することがあります。CPU 負荷が高い状態が続くと、業務システムの正常な動作に影響を及ぼし、企業に損失をもたらします。 このような状況に遭遇すると、多くの運用および保守担当者が困惑することがよくあります。CPU 過負荷の問題の場合、通常は次の 2 つの方法を使用して、問題を迅速に特定できます。 方法1 ステップ1: 使用
CPUを過剰に使用しているプロセスのPIDを見つける ステップ2: 使用
プロセス内で最も多くのリソースを消費するスレッドのIDを見つける ステップ3: 使用
スレッド ID を 16 進数に変換します (文字は小文字にする必要があります)
ステップ4: 実行
スレッドのステータス情報を表示する 方法2 ステップ1: 使用
CPUを過剰に使用しているプロセスを見つける ステップ2: 使用
スレッド情報を取得し、CPUを大量に消費するスレッドを見つける ステップ3: 使用
必要なスレッドIDを16進形式に変換します ステップ4: 使用
スレッドスタック情報を印刷する ケーススタディ シナリオの説明 実稼働環境での JAVA プロセスの CPU 使用率が高い場合のトラブルシューティング 解決プロセス 1. topコマンドによると、PID 2633のJavaプロセスがCPUの最大300%を占有し、障害が発生していることがわかります。 2. プロセスを見つけた後、特定のスレッドまたはコードを見つけるにはどうすればよいでしょうか? まず、スレッド リストを表示し、CPU 使用率の高いスレッドで並べ替えます。 [root@localhost ~]# ps -mp 2633 -o スレッド、tid、時間 | sort -rn 結果は次のとおりです。 CPU 消費量が最も高いスレッド (TID) 3626 が見つかりました。このスレッドは 12 分間 CPU 時間を占有していました。 3. 必要なスレッドTIDを16進形式に変換する [root@localhost ~]# printf "%x\n" 3626 18 18 18 4. 最後に、jstack コマンドを使用して、プロセスの下にあるこのスレッドのスタック情報を出力します。 [root@localhost ~]# jstack 2633 |grep "e18" -A 30 トラブルシューティングと比較して、障害を発見することも同様に重要です。 Zabbix、Nagios、Alibaba Cloud Monitoring(クラウド サーバー用)など、市場に出回っているほとんどの監視ソフトウェアは、サーバー負荷のリアルタイム監視を実現できます。しかし、ほとんどのソフトウェアでは、運用・保守担当者がルールを積極的に設定したり、テストを実施して問題を発見する必要があります。受動的にアラートを受信するにはどうすればよいでしょうか。 王教授、実用的な運用・保守ソフトウェアをお勧めしたいと思います。Alibaba Cloud にビジネスを展開しているユーザーは、監視が必要な読み取り専用の AcessKey をバインドするだけで、クラウド リソースのアラーム情報を対応するチーム メンバーに迅速に通知できます。 アクティブ アプローチからパッシブ アプローチへの変更により、一方では運用および保守エンジニアの作業負荷が軽減され、他方では O&M エンジニアがアラームを見逃したり無視したりする可能性も軽減されます。 要約する 以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。 以下もご興味があるかもしれません:
|
>>: MySql 8.0.11 のインストール プロセスと Navicat とのリンク時に発生する問題の概要
アプリケーションシナリオバックグラウンド管理システムを例にとると、各ユーザーには異なるボタン権限があ...
序文:この記事では、Ant Design Proログイン機能にグラフィック検証コードコンポーネントを...
序文Docker イメージは Dockerfile といくつかの必要な依存関係で構成され、Docke...
序文2 つのテーブル内の同じフィールドの型が異なっていたり、エンコード タイプが異なっていたりするた...
目次1. SparkとHadoopの比較1.1 Haoopの欠点1.2 Hadoop MR に対する...
mysql 8.0.11 winx64のインストールチュートリアルは以下のように記録され、みんなと共...
序文簡単に言えば、tcpdump は、ネットワーク上のトラフィックをダンプし、ユーザーの定義に従って...
目次序文準備する実装のアイデアコードについて要約する序文WeChat 認証ログインは、WeChat ...
同僚から、LINUX サーバー上の多くのコマンドが (コマンドが見つかりません) というプロンプトで...
HTML にはデータ属性が含まれていることがよくあります。これらは HTML5 のカスタム属性です。...
簡単に言うと、distinct は重複を削除するために使用され、group by は統計を集計するよ...
目次序文シナリオシミュレーション要約する序文最近、sql_mode の話題については何度も話し合われ...
Docker をインストールし、Docker コアとインストールを通じて簡単な操作を実行できます。 ...
主にその構造といくつかの重要な特性について説明します。少しずつ改善しながら紹介していきます。 1) ...
最初の方法: docker インストール1. オープンソース版のイメージを取得する2. 対応するデー...