Windows system >> Windowsの知識 >  >> Linuxシステムチュートリアル >> Linuxチュートリアル >> 一般的に使用されるLinuxシステム監視コマンドの概要

一般的に使用されるLinuxシステム監視コマンドの概要

  

後で見直すのに便利な、独自の一般的なLinuxシステムコマンドを記録して、メモリの状態が悪化していることを確認しましょう。

psコマンドの

コマンド:

PS -mp PID -o THREAD、TID、時間またはPS -Lfp PID

結果は:

このコマンドの役割は、主にプロセスに対応するスレッドに関する情報を取得することです。たとえば、Javaプロセスの実行中のボトルネックを分析したい場合は、このコマンドを使用して現在のすべてのスレッドのCPU使用時間を見つけることができます。これが最後の列です。

たとえば、ここでTID:30834が見つかりました。これは最も長いTIME時間を占めます。

最初にprintf"%x \\ n" 30834を使用して16進数に変換し、jstackコマンドを使用して現在のjvmプロセスのスタック情報をダンプし続けます。 Grepコマンドを使用すると、16進数のスレッドID情報を見つけることができ、最もCPUを集中的に使用するコードがどこにあるかをすばやく見つけることができます。; DboServiceProcessor-4

800 NID = 0x7d9b

" [0x0000000046f66000]状態で待機中:
ログイン

簡単な説明、コンテンツをjstackスレッドの一連下-thread-295" daemon prio = 10 tid = 0x00002aab047a9800 nid = 0x7d9b待機中の状態[0x0000000046f66000]

nid:対応するLinuxオペレーティングシステムのtid。変換された16進数です。

tid:これはjvmのjmmメモリ仕様の一意のアドレス位置であるべきです。jvmのメモリデータを詳細に使用しているのであれば使用できません。 topコマンドの

コマンド:

トップ-hp pidの

結果は:

と効果その前に、あなたは、リアルタイムで追跡することができます指定されたプロセスで最もCPUを消費するスレッドを取得します。次に、前の方法を使用して対応するスレッドスタック情報を抽出します。

I /Oのボトルネックが
分析

Solarisでmpstatコマンド

コマンド:Solarisでmpstat -P ALL 1千

結果は:

内部の%iowait列、つまりCPUがI /O操作を待つのにかかる時間に注意してください。この値は引き続き高い値であり、通常は入出力のボトルネックが原因で発生します。

このパラメータを使用すると、現在のI /O操作にボトルネックがあるかどうかを視覚的に確認できます。

iostatコマンド

コマンド:

iostat -m - ×1千

あなたはCPUに対応し、同じデータを観察することができiowaitの%は、加えてのiostatはまた、より重要なのI /Oステータスデータのいくつかの詳細を、提供しています。< Br>

avgqu-sz:デバイスに発行されたリクエストの平均キュー長(ディスクキューのリクエストの長さ、通常は2、3が良い。CPUの負荷と同じにすることができる)

await:デバイスに発行されたI /O要求が処理されるまでの平均時間(ミリ秒単位)(1つの待機からI /O操作の完了までの合計時間を表します)。

svctmと%util両方とも、I /O要求の処理に費やされた時間と、CPUに費やされた時間の割合を表します。それがボトルネックであるかどうかを判断するとき、これら2つのパラメータは主なものではありません。r /sw /sとrMB /s wMB /sは、現在のシステムが処理するI /Oを表す状態です。 Tps、後者はスループットです。これはシステムを評価するためのパフォーマンス指標でもあります。

pidコマンド

コマンド:

pidstat -p pid -u -d -t -w -h 1 1000

結果は:

非常に便利なコマンドは、より洗練されたの開発を促進することができ、CPU、I /O、IR、CSなどを含むプロセスときに対応した性能データに基づいて分析することができるさシステムの動作状態を確認してください。しかし、pidstatは2.6カーネルのいくつかの新しいバージョンに含まれているようです、あなたはsysstatパッケージをインストールする必要があります。

ubuntuでは、sudo apt-get install sysstatでインストールできます。

SARコマンド

コマンド:

SAR -x PID 1~1000
ログインいくつかの

SARがPIDに対応する指定することができる、注目固定パラメータ、pidstatほど強力ではありません。対応するI /O、IR、その他の情報が表示されません。

sar関数は、mpstatとiostatの関連関数をオーバーライドできます。

コマンド
DSTAT

コマンド:

DSTAT -y --tcp 1千

は、より簡単にDSTAT --tcpで見ることができますtcpの現在の状態は、毎回netstat -natを見る必要はありません。

その他のコマンド

netstat -natp:対応するネットワークリンクを表示し、Recv-Q、Send-Qに注意を払います。 、州。

lsof -p pid:対応するpidのファイルハンドルを検索します。

lsof -i:80:対応するポートがどのプロセスを占有しているかを検索します。

lsof /tmp/1.txt:対応するファイルがどのファイルを使用しているかを調べます。

tcpdump /wireshark:キャプチャパケット解析ツール

jstat /jmap /jstack /jpsおよびその他の一連のjavaモニタリングコマンド

最後に
>

パフォーマンス調整作業を行いたい場合は、対応する状態に注意を払うために必ずいくつかのツールを使用してください。 linuxコマンドを使用すると、CPU、I /O、ネットワークなどの周辺機器の状態を簡単に確認でき、ほとんどの問題を解決できます。 jvmの一部の内部状態監視には、いくつかの独自のツールを使用したきめ細かい観察が必要です。

Copyright © Windowsの知識 All Rights Reserved