Skip to content

Latest commit

 

History

History
55 lines (43 loc) · 4.51 KB

File metadata and controls

55 lines (43 loc) · 4.51 KB

Метод определения характеристик потребления памяти

Метод определения характеристик потребления памяти применим при планировании мощностей, сравнительном анализе и моделировании рабочих нагрузок. Относится к анализу наблюдения.

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

  • Потребление физической и виртуальной памяти в масштабе всей системы
  • Степень насыщения системы. Наличие подкачки и сообщений OOM Killer
  • Потребление памяти для кэшей ядра и файловой системы
  • Потребление физической и виртуальной памяти каждым процессом
  • Использование средств управления ресурсами памяти, если есть

Возможно рассмотрение дополнительных вопросов:

  • Какие процессы активно используют подкачку
  • Какие процессы ранее использовали подкачку
  • Какая доля кэша файловой системы активна/неактивна
  • Для каких целей используется память процесса
  • Могут ли процессы или ядро иметь утечки памяти
  • Каково соотношение операций чтения/записи с локальной и удаленной памятью

Время на реализацию:

  • Вручную: быстро. Снятие производится с помощью нескольких утилит.
  • Автоматизация: требуется больше времени на настройку скриптов, но метод все равно остается простым и быстрым, так как количество утилит и снимаемых показателей ограничено.

Накладные расходы:

  • Основные расходы связаны со сбором и хранением данных.
  • Затраты ресурсов из-за утилит минимальны. Подходят инструменты, работающие со счетчиками ядра.

Инструменты

vmstat 1 - наличие и активность подкачки

  • si, so - могут характеризовать подкачку

sar -B/sar -W - степень насыщения, анализ периодов сканирования страниц

  • pgpgin/s, pgpgout/s - количество загруженных и выгруженных страниц
  • pswpin/s, pswpout/s - количество операций подкачки и выгрузки в своп в секунду

dmesg - ошибки OOM Killer (сообщения "out of memory")

top/htop - потребление памяти всей системы и каждого процесса

  • RES - физическая память, используемая процессом
  • VIRT - виртуальная память, используемая процессом
  • %MEM - процент физической памяти, используемой процессом. Рассчитывается от доступной памяти

sar -r - исторические данные по использованию (кэш, буферы, свободная память)

  • kbmemfree - свободная физическая память
  • kbmemused - использованная физическая память
  • %memused - процент использования физической памяти
  • kbbuffers - память, используемая в качестве буферов ядра
  • kbcached - память, используемая в качестве кэша страниц

free -h - использование памяти

  • total - общий объем физической памяти
  • used - память, занятая процессами
  • free - свободная память
  • buff/cache - память, используемая для буферов и кэша