768MBのRAMがあります。通常、MySQLは100-180MBのRAMを使用し、MySQLは80-120MBをスワップします。 50-60MBの空きRAMがあります。
だからアップグレードする必要があると思いました。その後、RAMを1GBにアップグレードしました。その後、200-350MBの空きRAMがあります。しかし、MySQLは同じ量のRAMを使用しますが、まだ40〜60 MBを交換します。
これが私のfree -m
結果です。
total used free shared buffers cached
Mem: 996 796 200 0 73 97
-/+ buffers/cache: 625 371
Swap: 2047 92 1955
これが私の最高の結果です
top - 22:11:23 up 13:35, 1 user, load average: 0.26, 0.33, 0.35
Tasks: 143 total, 1 running, 142 sleeping, 0 stopped, 0 zombie
Cpu(s): 20.2%us, 1.8%sy, 0.0%ni, 77.8%id, 0.2%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 1020564k total, 809836k used, 210728k free, 77808k buffers
Swap: 2097144k total, 94880k used, 2002264k free, 102596k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ SWAP COMMAND
2484 mysql 20 0 1845m 165m 4356 S 25.9 16.6 151:33.45 63m mysqld
13777 myuser 20 0 201m 22m 9836 S 0.0 2.3 0:00.42 0 php-cgi
13780 myuser 20 0 200m 21m 9820 S 3.3 2.2 0:00.47 0 php-cgi
13773 myuser 20 0 200m 21m 9820 S 0.0 2.2 0:00.70 0 php-cgi
13775 myuser 20 0 200m 21m 9812 S 5.3 2.2 0:00.42 0 php-cgi
13779 myuser 20 0 200m 21m 9812 S 3.0 2.2 0:00.31 0 php-cgi
13778 myuser 20 0 200m 21m 9812 S 3.6 2.2 0:00.31 0 php-cgi
13776 myuser 20 0 200m 21m 9812 S 3.0 2.2 0:00.31 0 php-cgi
13774 myuser 20 0 199m 20m 9812 S 0.0 2.1 0:00.23 0 php-cgi
2619 named 20 0 233m 9.8m 1388 S 0.0 1.0 0:04.57 5288 named
2689 root 20 0 328m 7528 6316 S 0.0 0.7 0:05.14 9648 httpd
13735 root 20 0 106m 4840 3756 S 0.0 0.5 0:00.26 0 sshd
12772 apache 20 0 328m 3932 2040 S 0.0 0.4 0:01.08 9392 httpd
13163 apache 20 0 328m 3916 2036 S 0.0 0.4 0:00.65 9400 httpd
13425 apache 20 0 328m 3912 2036 S 0.0 0.4 0:00.32 9404 httpd
13417 apache 20 0 328m 3908 2036 S 0.0 0.4 0:00.35 9412 httpd
13420 apache 20 0 328m 3908 2036 S 0.0 0.4 0:00.37 9412 httpd
371MBの空きRAMがあっても、CentOS 6.3システムはまだ交換されています。スワップサイズは90MBです。
私の質問は、空きRAMが多いにもかかわらず、なぜLinuxがまだスワップをしているのかということです。悪い場合はどうやって診断しますか?それとも私はそれを気にしないでください?
答え1
あなたのmysqldは1,8 GBのRAMを使用するように設定されています。/etc/my.cnf
これは、おそらく実際に利用可能な容量よりもはるかに多くの容量であるためです。
これで、ある時点で(おそらくこれsysstat
についてインストールして問い合わせたかもしれませんsar
)、利用可能なものよりも多くのRAMを使用するメモリ要求(PHPも利用可能)を受け取っているようです。だからシステムはスワッピングを開始します。
結局のところ、メモリは使用されなくなりますが、アクセスする方法はありません。したがって、システムは、対応するスワップ空間をRAMに戻す理由はない。
Linuxの「交換」を調整してこの動作を変更できます。
「Ask Ubuntu」に良い質問/回答があります。ここ。
答え2
apache
あなたが逃げるのを見て、昨年問題が発生しました1G ram
。約300〜400Kのメモリが必要です。これは私にとってとても悪かったので削除してインストールしました。あなたはそれを行う。vps
apache
VPS
apache
lighthttpd