最初に、3つの質問に興味があります。それらを順番に検討します。
1.システムのパフォーマンスに影響するものは何ですか?
- 記憶
- CPU
- 運転
- ネットワーク
2.パフォーマンスの問題の一般的なケース
- 生産性の不十分な負荷テストは、既存のシステムの不均衡な負荷につながります
- 既存のアプリケーションの負荷の増加によるシステムリソースの不足
- ハードウェアとソフトウェアの複雑な問題
3.データ収集中に使用される概念は何ですか?
2種類のデータが必要です。1つ目はシステムに重大な負荷がかかったときに収集され、2つ目はシステムの安定動作中に収集されます。
4.最後に、私たちのシステムにはどのような意味がありますか?
- vmstat-メモリ、プロセッサ、I / O
- mpstat-CPU
- iostat-I / O
- netstat-ネットワーク
- lockstat-システムコール、ロック
- sar-ユーティリティは多面的であり、すべてオプションに依存します
- その他。
これらと他のユーティリティ、出力オプション、およびこれらの調査結果を読んで徐々に話をしようとします。 RAMの使用を分析して、最も必要なものから始めましょう。
メモリの使用を分析します。最初に、カーネルによって占有されているメモリの量と、ユーザーによって占有されているメモリの量を調べる必要があります。次のステップはこれに依存します。
root@T1000-spare # echo "::memstat" | mdb -k
Page Summary Pages MB %Tot
------------ ---------------- ---------------- ----
Kernel 54267 423 5%
Anon 25457 198 3%
Exec and libs 4346 33 0%
Page cache 9650 75 1%
Free (cachelist) 10775 84 1%
Free (freelist) 908455 7097 90%
Total 1012950 7913
Physical 1007634 7872
ユーザーのメモリ使用量:最もメモリを使用しているプロセスを表示します
root@T1000-spare # prstat -s rss
PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/NLWP
1238 noaccess 155M 117M sleep 59 0 0:01:01 0.0% java/18
662 root 18M 15M sleep 59 0 0:00:05 0.0% fmd/26
7 root 16M 13M sleep 59 0 0:00:09 0.0% svc.startd/12
9 root 12M 11M sleep 59 0 0:00:34 0.0% svc.configd/17
697 root 10M 8304K sleep 59 0 0:00:00 0.0% snmpd/1
489 root 50M 8048K sleep 59 0 0:00:00 0.0% gdm-binary/1
446 root 9744K 6352K sleep 59 0 0:00:01 0.0% inetd/4
1773 root 7464K 6152K sleep 59 0 0:00:00 0.0% sshd/1
184 root 6704K 4728K sleep 59 0 0:00:00 0.0% nscd/31
187 root 5536K 4720K sleep 59 0 0:00:00 0.0% picld/9
1772 root 5680K 4312K sleep 59 0 0:00:00 0.0% sshd/1
667 root 9608K 4184K sleep 59 0 0:00:00 0.0% sendmail/1
142 root 6832K 3784K sleep 59 0 0:00:00 0.0% syseventd/15
664 smmsp 9672K 3744K sleep 59 0 0:00:00 0.0% sendmail/1
202 daemon 4984K 3728K sleep 59 0 0:00:00 0.0% kcfd/5
2019 oracle 3880K 3600K cpu17 59 0 0:00:00 0.0% prstat/1
==================================================
次のコマンドは、共有メモリとセマフォの出力を表示します。
root @ T1000-spare#ipcs -a(残念ながら、このサーバーはテストされており、レイズされたばかりです。負荷を示すことはできません)
次のコマンドは、(PID 0,2,3)を除くすべてのプロセスによるユーザーメモリの使用を示しています。
root@T1000-spare # egrep "[0-9]:|^total" /var/tmp/pmap-x
1: /sbin/init
total Kb 3024 2712 312 -
1112: /usr/dt/bin/dtlogin -daemon
total Kb 6576 4536 304 -
1238: /usr/java/bin/java -server -Xmx128m -XX:+UseParallelGC -XX:ParallelGCT
total Kb 158552 120040 103304 -
142: /usr/lib/sysevent/syseventd
total Kb 6832 5832 1096 -
146: /usr/lib/ldoms/drd
total Kb 2600 2320 408 -
1539: /home/OracleDB/11.2/ccr/bin/nmz -cron -silent
total Kb 3936 3152 264 -
1772: /usr/lib/ssh/sshd
total Kb 5680 5352 728 -
1773: /usr/lib/ssh/sshd
total Kb 7464 6928 408 -
===================================================
次の手順は、/ tmpファイルシステムの使用を確認することです。
root@T1000-spare # df -kl /tmp/
Filesystem kbytes used avail capacity Mounted on
swap 14380920 104 14380816 1% /tmp
===================================================
root @ T1000-spare#du -akd / tmp | sort -n | tail -5-このコマンドは、このファイルシステム内の5つの大きなファイルを表示します。
合計システムメモリ使用量:
root@T1000-spare # vmstat -p 3
memory page executable anonymous filesystem
swap free re mf fr de sr epi epo epf api apo apf fpi fpo fpf
14314224 7375848 26 67 1 0 13 23 0 0 0 0 0 40 1 1
14381608 7361752 3 6 0 0 0 0 0 0 0 0 0 0 0 0
14381288 7361616 0 0 0 0 0 0 0 0 0 0 0 0 0 0
=============================================
このコマンドは、3秒ごとに情報を表示します。
もちろん、SWAPシステムの使用を確認する必要があります。
root@T1000-spare # swap -s
total: 193424k bytes allocated + 47176k reserved = 240600k used, 14381936k available
root@T1000-spare # swap -l
swapfile dev swaplo blocks free
/dev/dsk/c0t0d0s1 32,9 16 16387600 16387600
===================================================
このセクションでは、最終チームがカーネル統計を確認します。非常に優れたkstatユーティリティで、さまざまな追加キーがあります。また、以下で指定したコマンドを使用することもできます
root@T1000-spare # echo "::kmastat"| mdb -k > /var/tmp/kmastat
root@T1000-spare # more /var/tmp/kmastat
cache buf buf buf memory alloc alloc
name size in use total in use succeed fail
------------------------- ------ ------ ------ --------- --------- -----
kmem_magazine_1 16 1161 1524 24576 1161 0
kmem_magazine_3 32 2184 2540 81920 2805 0
kmem_magazine_7 64 1730 2413 155648 3043 0
kmem_magazine_15 128 2701 2772 360448 3401 0
kmem_magazine_31 256 337 341 90112 337 0
kmem_magazine_47 384 0 0 0 0 0
この表では、「使用中のメモリ」列と、「alloc fail」がゼロより大きいすべての行を調べる必要があります。
さて、これまでの記事で、テキストの大きなキャンバスに負担をかけたくありません。Solarisでのペット観察のレビューをすぐに続けられることを望みます。