私はグラフィカルSSHクライアント(securessh)を使用してLinuxサーバー(仮想マシンとしてインストールされている)にログインします。サーバーはtomcat5.5サーバーを実行します。関係インストールされました。
コマンドを入力したり、小さなファイル(約5〜6 MB)を削除/コピーしたりすると、シェルが応答するのに長い時間がかかります(10秒から約1分)。top
メモリ/CPU時間が多いプロセスがあるかどうかを確認するために実行しようとしました。
top - 13:34:41 up 86 days, 16:04, 1 user, load average: 2.13, 0.99, 1.94
Tasks: 63 total, 1 running, 62 sleeping, 0 stopped, 0 zombie
Cpu(s): 2.0%us, 1.5%sy, 0.0%ni, 96.2%id, 0.2%wa, 0.0%hi, 0.1%si, 0.0%st
Mem: 3896416k total, 3097824k used, 798592k free, 167180k buffers
Swap: 915664k total, 84k used, 915580k free, 2409236k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
20436 tomcat55 20 0 359m 217m 13m S 18 5.7 2713:04 jsvc
tomcat55 ユーザーだけが多くのリソースを使用します。上記の出力によると、このユーザーはメモリの5.7%とCPUの5.7%しか消費していないようです。私はtop
出力を間違って読みましたか? CPUとメモリ使用率が低すぎると、システムのパフォーマンスが低下するのはなぜですか?
編集する:今実行して次のようにしようとしています。
ATOP - repository 2011/09/20 16:08:48 10 seconds elapsed
PRC | sys 0.17s | user 0.03s | #proc 64 | #zombie 0 | #exit 4 |
CPU | sys 2% | user 1% | irq 0% | idle 198% | wait 0% |
cpu | sys 1% | user 1% | irq 0% | idle 98% | cpu001 w 0% |
cpu | sys 0% | user 0% | irq 0% | idle 99% | cpu000 w 0% |
CPL | avg1 0.05 | avg5 0.92 | avg15 1.29 | csw 976 | intr 61 |
MEM | tot 3.7G | free 656.7M | cache 2.4G | buff 170.9M | slab 241.3M |
SWP | tot 894.2M | free 894.1M | | vmcom 781.9M | vmlim 2.7G |
DSK | sda | busy 0% | read 0 | write 9 | avio 0 ms |
NET | transport | tcpi 18 | tcpo 26 | udpi 0 | udpo 0 |
NET | network | ipi 22 | ipo 26 | ipfrw 0 | deliv 22 |
NET | eth1 0% | pcki 34 | pcko 26 | si 2 Kbps | so 11 Kbps |
PID SYSCPU USRCPU VGROW RGROW RDDSK WRDSK ST EXC S CPU CMD 1/1
4687 0.06s 0.02s 0K 0K - - NE 0 E 1% <lsb_release>
4689 0.04s 0.01s 0K 0K - - NE 0 E 1% <apt-cache>
4684 0.04s 0.00s 132K 132K 0K 0K -- - R 0% atop
4673 0.02s 0.00s 0K 0K 0K 0K -- - S 0% sshd
4152 0.01s 0.00s 0K 0K 0K 0K -- - S 0% vmware-guestd
2302 0.00s 0.00s 0K 0K 0K 4K -- - S 0% kjournald
4688 0.00s 0.00s 0K 0K - - NE 0 E 0% <sh>
4686 0.00s 0.00s 0K 0K - - NE 0 E 0% <sh>
私が正しく理解した場合、「ゾンビ」はありませんが、まだCPU時間の大部分を占めます(199%から200%にジャンプ)。これが予想される動作ですか?
答え1
またiostatまた、考慮する必要があります上(http://www.atoptool.nl/) CPU 以外のボトルネックを識別します。
答え2
答え3
たとえば、ファイルシステムコマンドはcp
CPU時間やメモリを大量に消費しないでください。その内容がtop
表示されます。このプログラムを試してみてくださいiotop
(インストールが必要な場合があります)。
答え4
今はソースが見つかりません。申し訳ありませんが、仮想ドライブが保存されている場所に関連している可能性があることを読んだことがあります。 NFS経由で保存してアクセスすると、オーバーヘッドとジッタがたくさん発生します。
VirtualboxにはIOキャッシュを調整するオプションがあります。これらのオプションを確認することをお勧めします。これは、cpなどのデータをコピーする単純なプログラムに影響します。