2010-03-10 20 views
0

我正在運行一個EC2小實例作爲我的生產服務器。它擁有1.7G內存。我注意到它幾乎使用了所有的內存。但是,當我檢查頂部輸出時,看起來只有30%被實際使用。我誤讀了最高的輸出結果嗎?誰在使用我生產服務器上的所有內存(apache + mysql + rails)?

這裏是頂部輸出(由%MEM排序)

 
top - 21:33:15 up 141 days, 9:39, 2 users, load average: 0.00, 0.00, 0.00 
Tasks: 81 total, 2 running, 79 sleeping, 0 stopped, 0 zombie 
Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st 
Mem: 1747660k total, 1733580k used, 14080k free, 224144k buffers 
Swap: 917496k total,  132k used, 917364k free, 1144808k cached 

    PID USER  PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND                                           
11664 mysql  15 0 794m 83m 5020 S 0.0 4.9 0:17.34 mysqld                                           
12845 nobody 25 0 52416 38m 3200 S 0.0 2.3 0:02.10 ruby1.8                                           
12847 nobody 16 0 52704 38m 2068 S 0.0 2.2 0:02.08 ruby1.8                                           
12023 www-data 15 0 37692 10m 4164 S 0.0 0.6 0:01.28 apache2                                           
11979 www-data 15 0 37660 10m 4172 S 0.0 0.6 0:01.24 apache2                                           
12020 www-data 15 0 37708 10m 4120 S 0.0 0.6 0:01.17 apache2                                           
12263 www-data 15 0 37708 10m 4176 S 0.0 0.6 0:00.83 apache2                                           
11989 www-data 15 0 37720 10m 4024 S 0.0 0.6 0:01.28 apache2                                           
12014 www-data 15 0 37468 10m 4172 S 0.0 0.6 0:01.17 apache2                                           
12021 www-data 15 0 37652 10m 3992 S 0.0 0.6 0:01.25 apache2                                           
12054 www-data 15 0 37480 10m 4176 S 0.0 0.6 0:01.33 apache2                                           
11990 www-data 15 0 37448 10m 4188 S 0.0 0.6 0:01.16 apache2                                           
12024 www-data 16 0 37416 10m 4172 S 0.0 0.6 0:01.00 apache2                                           
11991 www-data 15 0 37432 10m 4148 S 0.0 0.6 0:01.24 apache2                                           
11984 www-data 15 0 37444 9.8m 3972 S 0.0 0.6 0:01.33 apache2                                           
11985 www-data 15 0 37444 9.8m 3948 S 0.0 0.6 0:01.18 apache2                                           
11982 www-data 15 0 37408 9.8m 3968 S 0.0 0.6 0:01.12 apache2                                           
12013 www-data 17 0 37432 9.8m 4152 S 0.0 0.6 0:01.19 apache2                                           
12052 www-data 15 0 37176 9.8m 4180 S 0.0 0.6 0:01.29 apache2                                           
11981 www-data 15 0 37172 9.8m 4168 S 0.0 0.6 0:01.40 apache2                                           
12395 www-data 15 0 37420 9988 3972 S 0.0 0.6 0:00.72 apache2                                           
12015 www-data 15 0 37412 9972 3900 S 0.0 0.6 0:01.31 apache2                                           
11987 www-data 15 0 37160 9956 4136 S 0.0 0.6 0:01.22 apache2                                           
12022 www-data 15 0 37140 9900 4140 S 0.0 0.6 0:01.20 apache2                                           
12051 www-data 15 0 37216 9848 3976 S 0.0 0.6 0:01.31 apache2                                           
11978 www-data 18 0 36948 9784 4180 S 0.0 0.6 0:01.08 apache2                                           
11975 www-data 15 0 37140 9772 3972 S 0.0 0.6 0:01.49 apache2                                           
12019 www-data 15 0 37148 9752 3944 S 0.0 0.6 0:01.08 apache2                                           
11970 www-data 15 0 36920 9736 4160 S 0.0 0.6 0:01.25 apache2                                           
11974 www-data 15 0 36848 9656 4148 S 0.0 0.6 0:01.53 apache2                                           
11973 www-data 15 0 36924 9552 3972 S 0.0 0.5 0:01.19 apache2                                           
28622 root  18 0 35232 9232 5592 S 0.0 0.5 0:00.30 apache2                                           
11969 www-data 15 0 36340 9132 4136 S 0.0 0.5 0:01.51 apache2                                           
12018 www-data 19 0 36332 9124 4136 S 0.0 0.5 0:01.32 apache2                                           
11972 www-data 15 0 36320 8968 3988 S 0.0 0.5 0:01.33 apache2                                           
12012 www-data 15 0 35796 8600 4144 S 0.0 0.5 0:01.11 apache2                                           
11965 root  15 0 17356 7552 1644 S 0.0 0.4 0:00.13 ruby1.8                                           
12848 root  15 0 8384 2744 2164 R 0.0 0.2 0:00.12 sshd                                           
12762 root  15 0 8384 2724 2164 S 0.0 0.2 0:00.01 sshd                                           
11302 postfix 18 0 6184 2576 1880 S 0.0 0.1 0:00.02 tlsmgr                                           
11964 root  16 0 8188 2248 1492 S 0.0 0.1 0:00.06 ApplicationPool                                         
23997 postfix 22 0 5856 1852 1488 S 0.0 0.1 0:00.22 qmgr                                           
12850 root  15 0 4408 1848 1436 S 0.0 0.1 0:00.00 bash                                           
12764 root  25 0 4396 1800 1400 S 0.0 0.1 0:00.00 bash                                           
23996 root  15 0 5804 1780 1428 S 0.0 0.1 0:01.01 master                                           
13036 postfix 17 0 5812 1684 1356 S 0.0 0.1 0:00.00 pickup                                           
1051 klog  18 0 2884 1676 436 S 0.0 0.1 0:00.04 klogd                                           
13035 root  15 0 2468 1164 916 R 0.0 0.1 0:00.01 top                                            
5841 nobody 15 0 2652 1120 684 S 0.0 0.1 0:00.50 memcached                                          
11509 root  15 0 5456 1068 676 S 0.0 0.1 0:00.00 sshd                                           
1163 root  18 0 3560 1060 872 S 0.0 0.1 0:01.46 cron                                           
    1 root  18 0 2032 840 580 S 0.0 0.0 0:04.20 init                                           
4070 syslog 18 0 2056 732 568 S 0.0 0.0 7:25.48 syslogd                                           
    908 root  16 -2 2292 656 528 S 0.0 0.0 0:00.06 dhclient3                                          

回答

3

'used'count包括文件系統緩存和內核緩衝區。緩存的內存可以在應用程序需要更多堆時釋放。你說的實際上只使用了大約30%,因爲65%是緩存,而12%是緩存。

當應用程序試圖分配更多內存時,內核將釋放緩存的內存,這是正常行爲,我認爲內存使用沒有問題。

當您使用大量交換,並且您的'緩存'計數非常低 - 那麼您有問題。

一些其他有用的信息在這裏(適用於任何Linux發行版) - http://forums.gentoo.org/viewtopic.php?t=175419

+0

解釋它。非常感謝你。 現在我感到有信心,如果我投入256m或512m的memcached,它不會造成問題。 –

1

Mem: 1747660k total, 1733580k used, 14080k free, 224144k buffers

總和:-)

+0

我覺得他算'RES'列,並獲得約30% – klew

+0

我數了數%MEM列這可能只計算RES。 謝謝。 –

0

它用於文件緩衝用於比較。這是沒有錯的,因爲良好的內存管理應該始終使用系統中所有可用的內存。我不記得,但我認爲1144808k cached是你無法找到的內存。

您可以嘗試編寫一個簡單的應用程序,保留大約1 GB的內存並釋放它並退出。那麼可能你應該將這個1 GB計爲可用內存,因爲文件緩衝區已被刪除。

+0

是的,這可能是。謝謝。 –

相關問題