Как интерпретировать цифры использования памяти? - PullRequest
4 голосов
/ 26 октября 2008

Может кто-нибудь объяснить это на практике? Пример представляет использование для одного сайта Rails с низким трафиком, используя кластеры Nginx и 3 Mongrel. Я спрашиваю, потому что я стремлюсь узнать о кэшировании страниц, задаваясь вопросом, имеют ли эти цифры существенное значение для этого процесса. Спасибо. Отличный сайт!

me@vps:~$ free -m
                   total       used       free     shared    buffers     cached
Mem:           512        506            6             0          15           103
-/+ buffers/cache:       387        124
Swap:         1023        113        910

Ответы [ 2 ]

3 голосов
/ 26 октября 2008

Физическая память полностью израсходована. Зачем? Поскольку оно есть, система должна его использовать.

Вы также заметите, что система использует 113M пространства подкачки. Плохой? Хорошо? Это зависит.

Смотрите также, что есть 103M кэшированного диска; это означает, что система решила, что лучше кэшировать 103M диска и выгрузить эти 113M; возможно, у вас есть некоторые процессы, использующие память, которая не используется и, таким образом, выгружается на диск.

Как сказал другой автор, вы должны использовать другие инструменты, чтобы увидеть, что происходит:

  1. Ваше восприятие: правильно ли работает сайт, когда вы его используете?
  2. Сравнительный анализ: какое время отклика видят ваши клиенты?
  3. Более детальная диагностика:
    1. top: вы можете видеть в реальном времени, какие процессы используют память и процессор
    2. vmstat: вывод такого вида:
 alex@armitage:~$ vmstat 1
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
 2  1  71184 156520  92524 316488    1    5    12    23  362  250 13  6 80  1
 0  0  71184 156340  92528 316508    0    0     0     1  291  608 10  1 89  0
 0  0  71184 156364  92528 316508    0    0     0     0  308  674  9  2 89  0
 0  0  71184 156364  92532 316504    0    0     0    72  295  723  9  0 91  0
 1  0  71184 150892  92532 316508    0    0     0     0  370  722 38  0 62  0
 0  0  71184 163060  92532 316508    0    0     0     0  303  611 17  2 81  0

, которая покажет вам, наносит ли вам вред своп (большие цифры на si и т. Д.), И более удобную для просмотра статистику производительности с течением времени.

1 голос
/ 26 октября 2008

Насколько я понимаю, вы использовали почти всю свою память, у вас есть 6 МБ свободного места, и вы собираетесь использовать около 10% вашего обмена. Более полезные инструменты - использовать top или, возможно, ps, чтобы увидеть, сколько каждый из ваших шавок использует в оперативной памяти. Поскольку вы идете в своп, вы, вероятно, получаете больше замедлений. вы можете обнаружить, что только 2 шавки, а не 3, могут на самом деле быстрее реагировать, потому что, скорее всего, они не попадут в память подкачки.

Кэширование страниц наверняка поможет на время отклика, поэтому, если ваши страницы кэшируются (например, у них нет контента, который является уникальным для отдельного пользователя), я бы точно сказал, проверьте это

...