linuxのパフォーマンスを表示するコマンドをいくつか記録します.
6051 ワード
一、topコマンド
一般的な使い方: top CPU負荷、メモリ使用量、buffer/cache、swap状況 を表示する. top-HP pid現在のプロセススレッド数、スレッドが占有するリソースの状況(一般的な位置決めスレッドCPUが高いシーン) を表示する. topインタラクティブコマンド-mメモリ別逆出力-P CPU別逆出力-cプロセスの完全なパスの詳細を参照してください.https://www.cnblogs.com/peida/archive/2012/12/24/2831353.html
二、freeコマンド
一般的な使い方: free-k|-m KB、MBディスプレイメモリ メモリ使用量の表示
freeが大きい場合は、一般的に注目する必要はありませんが、usedが大きい場合はbuffers、cachedの占有量が大きく、一般的には問題なくlinuxはこのキャッシュを自動的に回収します.linuxが何らかの問題で回収できない場合(ファイルキャッシュが多すぎるため)、メモリがいっぱいになり、マシンにログインできなくなります.ビジネスに影響を及ぼさずにシステムcacheをクリーンアップすることを考慮します.swapのusedが0の場合、仮想メモリが使用されていないことを示します.そうしないと、メモリ不足に注意する必要があります.
linux buffer/cacheを表示するツール-htopをお勧めします.必要に応じてgithubダウンロード実行ファイルを取得することができる.https://github.com/djhuahao/hcache
三、iostatコマンド
LinuxシステムのiostatはI/O statistics(入出力統計)の略で、iostatツールはシステムのディスク操作活動を監視する一般的な使い方です. iostat-d-m 1ディスクの読み取りと書き込みを1秒おきに表示する(-dはdisk、-mはMBを表示する) . iostat-c-m 1ディスク、CPU使用率を1秒ごとに表示する(-cはcpu、-mはMBを表示する)
ここでiowaitは、CPUが入出力完了待ち時間の割合を表し、値が大きい場合(30を超える場合)は、ハードディスクのパフォーマンスに問題があると判断し、ディスク書き込みに対して特定の最適化やアップグレードを行うことができます.
四、vmstatコマンド
vmstatはVirtual Meomory Statistics(仮想メモリ統計)の略で、オペレーティングシステムの仮想メモリ、プロセス、CPUアクティビティを監視できます.パラメータの説明:
一般的な使い方: vmstat-S m 1毎秒1回、MB 単位で表示システムのslab情報vmstat-m を表示
五、dstatコマンド
dstatは、他のコマンドよりも豊富な機能を提供しています.一般的な使い方は次のとおりです. dstat 1は1秒に1回表示されます(オプションなしでデフォルトは-cdngym).一度にもっと多くの情報を見たい場合は、 を実行できます. dstat-cyl--proc-count--top-cpu CPUの使用状況を確認 dstat-glms--top-memメモリの使用状況を表示 dstat--tcp--socketは、tcp接続数(接続が確立され、閉じられ、time_waitの下のリンクを含む)を表示します.tcp、udpリンク数を表示します.
それぞれlisten,established,syn,time_を表すwait,close状態.total, tcp, udp, raw, ip-fragments dstat-dn--top-io--disk-utilディスク、ネットワーク、最もioを消費するプロセス、およびディスクの忙しい状態を表示する
六、その他の命令
一般的な使い方:
二、freeコマンド
一般的な使い方:
[root@10 /data/home/jerrikyang]# free -m
total used free shared buffers cached
Mem: 64198 47069 17129 0 247 870
-/+ buffers/cache: 45950 18247
Swap: 2039 1615 424
freeが大きい場合は、一般的に注目する必要はありませんが、usedが大きい場合はbuffers、cachedの占有量が大きく、一般的には問題なくlinuxはこのキャッシュを自動的に回収します.linuxが何らかの問題で回収できない場合(ファイルキャッシュが多すぎるため)、メモリがいっぱいになり、マシンにログインできなくなります.ビジネスに影響を及ぼさずにシステムcacheをクリーンアップすることを考慮します.swapのusedが0の場合、仮想メモリが使用されていないことを示します.そうしないと、メモリ不足に注意する必要があります.
echo 1 > /proc/sys/vm/drop_caches
echo 2 > /proc/sys/vm/drop_caches
echo 3 > /proc/sys/vm/drop_caches
linux buffer/cacheを表示するツール-htopをお勧めします.必要に応じてgithubダウンロード実行ファイルを取得することができる.https://github.com/djhuahao/hcache
三、iostatコマンド
LinuxシステムのiostatはI/O statistics(入出力統計)の略で、iostatツールはシステムのディスク操作活動を監視する一般的な使い方です.
Device: tps MB_read/s MB_wrtn/s MB_read MB_wrtn
sda 25.39 0.00 1.87 145820 88053728
avg-cpu: %user %nice %system %iowait %steal %idle
19.14 0.00 5.56 0.02 0.00 75.28
ここでiowaitは、CPUが入出力完了待ち時間の割合を表し、値が大きい場合(30を超える場合)は、ハードディスクのパフォーマンスに問題があると判断し、ディスク書き込みに対して特定の最適化やアップグレードを行うことができます.
四、vmstatコマンド
vmstatはVirtual Meomory Statistics(仮想メモリ統計)の略で、オペレーティングシステムの仮想メモリ、プロセス、CPUアクティビティを監視できます.パラメータの説明:
r:
b: IO
Memory( ):
swpd:
free:
buff:
cache:
Swap:
si:
so:
IO:( Linux 1024bytes)
bi:
bo:
:
in: , 。
cs: 。
CPU( ):
us: (user time)
sy: (system time)
id: ( IO ), 。 。
wa: IO
一般的な使い方:
[root@TENCENT64 /data/home/jerrikyang]# vmstat -S m 1
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
2 0 1 22537 457 8314 0 0 0 6 0 0 3 1 96 0 0
0 0 1 22538 457 8314 0 0 0 0 53958 37303 4 2 95 0 0
五、dstatコマンド
dstatは、他のコマンドよりも豊富な機能を提供しています.一般的な使い方は次のとおりです.
dstat -cdlmnpsy
[root@VM_32_173_centos ~]# dstat -cyl --proc-count --top-cpu
----total-cpu-usage---- ---system-- ---load-avg--- proc -most-expensive-
usr sys idl wai hiq siq| int csw | 1m 5m 15m |tota| cpu process
0 0 100 0 0 0| 708 1033 | 0 0.02 0.05| 156|sap1002 0.1
0 0 100 0 0 0| 766 1066 | 0 0.02 0.05| 156|
0 0 100 0 0 0| 704 944 | 0 0.02 0.05| 156|java 0.1
0 0 100 0 0 0| 744 991 | 0 0.02 0.05| 156|sap1002 0.1
[root@VM_32_173_centos ~]# dstat -glms --top-mem
---paging-- ---load-avg--- ------memory-usage----- ----swap--- --most-expensive-
in out | 1m 5m 15m | used buff cach free| used free| memory process
0 0 | 0 0.02 0.05|2213M 284M 12.8G 143M| 0 0 |java 994M
0 0 | 0 0.02 0.05|2213M 284M 12.8G 143M| 0 0 |java 994M
0 0 | 0 0.02 0.05|2213M 284M 12.8G 143M| 0 0 |java 994M
[root@VM_32_173_centos ~]# clkear^C
[root@VM_32_173_centos ~]# clear
[root@VM_32_173_centos ~]# dstat --tcp --socket
----tcp-sockets---- ------sockets------
lis act syn tim clo|tot tcp udp raw frg
7 7 0 0 0|191 14 5 0 0
7 7 0 0 0|191 14 5 0 0
それぞれlisten,established,syn,time_を表すwait,close状態.total, tcp, udp, raw, ip-fragments
[root@VM_32_173_centos /data/home/jerrikyang]# dstat -dn --top-io --disk-util
-dsk/total- -net/total- ----most-expensive---- sda-
read writ| recv send| i/o process |util
2002B 142k| 0 0 |init 1512k 2553k|0.10
0 72k|2328k 4086k|java 350k 1019k| 0
六、その他の命令
#
echo 3 > /proc/sys/vm/drop_caches
#
cd /proc/x/task
top -Hp pid -> tasks
#
ethtool eth1
# (connected,listen)
netstat -nalp
# tcp
netstat -nltp
# udp
netstat -nlup
#
lsof -p pid
#
dmidecode
#
lspci
# cpu
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
# cpu ( )
grep 'physical id' /proc/cpuinfo | sort | uniq | wc -l
# CPU
cat /proc/cpuinfo |grep "cores"|uniq
# CPU
cat /proc/cpuinfo |grep MHz|uniq
# CPU
lscpu
# CPU
getconf LONG_BIT -- 64
#dstat
alias dstat='dstat -cdlmnpsy'
#
/var/log/dmesg -> dmesg
# (IO 、 )
/var/log/messages
# tcp (dstat --tcp --socket)
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
#
hdparm -t /dev/vdb1
# iops
fio -filename=/dev/sda -direct=1 -iodepth 1 -thread -rw=randrw -rwmixread=70 -ioengine=psync -bs=16k -size=200G -numjobs=30 -runtime=100 -group_reporting -name=my_test