Obecnie debuguję problemy z wydajnością mojego VPS i dlatego próbuję zrozumieć, który z procesów zużywa najwięcej pamięci. Czytając górę, oto co otrzymuję:
Mem: 366544k total, 321396k used, 45148k free, 380k buffers
Swap: 1048572k total, 592388k used, 456184k free, 7756k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
12339 ruby 20 0 844m 74m 2440 S 0 20.8 0:24.84 ruby
12363 ruby 20 0 844m 73m 1576 S 0 20.6 0:00.26 ruby
21117 ruby 20 0 171m 33m 1792 S 0 9.3 2:03.98 ruby
11846 ruby 20 0 858m 21m 1820 S 0 6.0 0:09.15 ruby
21277 ruby 20 0 219m 11m 1648 S 0 3.2 2:00.98 ruby
792 root 20 0 266m 10m 1024 S 0 3.0 1:40.06 ruby
532 mysql 20 0 234m 4760 1040 S 0 1.3 0:41.58 mysqld
793 root 20 0 250m 4616 984 S 0 1.3 1:20.55 ruby
586 root 20 0 156m 4532 848 S 0 1.2 6:17.10 god
12315 ruby 20 0 175m 2412 1900 S 0 0.7 0:07.55 ruby
3844 root 20 0 44036 2132 1028 S 0 0.6 1:08.22 ruby
10939 ruby 20 0 179m 1884 1724 S 0 0.5 0:08.33 ruby
4660 ruby 20 0 229m 1592 1440 S 0 0.4 2:55.46 ruby
3879 nobody 20 0 37428 964 520 S 0 0.3 0:01.99 nginx
Jak widać, moja pamięć jest używana w około 90% (co jest moim problemem), ale po dodaniu wartości% MEM, osiąga ona tylko około 50-60%. To samo, RES nie sumuje się do ~ 350 MB. Dlaczego? Czy źle rozumiem ich znaczenie?
Dzięki
memory-usage
top
ben
źródło
źródło
Odpowiedzi:
To proste: rubin !
W rzeczywistości zsumowanie kolumn w pokazany sposób daje 69,2% .
Jak zauważył Samik, z pewnością nie obejmuje wszystkich procesów w twoim systemie - spróbuj wkleić dane wyjściowe,
top -b -n 1
aby uzyskać pełne dane wyjściowe w pliku i udostępnić je nam, abyśmy mogli Ci lepiej pomóc.Jądro zajmuje również pewną ilość pamięci, a niektóre rodzaje VPS (np. Xen, KVM) rezerwują trochę pamięci podczas rozruchu do użytku wewnętrznego. Wklej też wyjście
dmesg
.W celu uzyskania lepszych wskaźników i łatwości użytkowania zalecamy użycie htop zamiast top z włączoną opcją „Ukryj wątki użytkownika”:
Zobacz także
memtop
:źródło
top
polecenie linux pokazuje całąram
wykorzystaną pamięć, nie tylko dla ciebie, ale także dla systemu. linuxcaches
niektóre obszary z dysku twardego w celu wypowiedzenia komputera. zaleca się użycie dowolnego innego monitora mem.źródło