У меня есть процесс node.js, работающий на коробке Solaris. В верхнем представлении команд столбец "RES", который, как мне кажется, представляет физическую память, является постоянным и разумным. Однако колонка "РАЗМЕР" продолжает расти, в течение двух часов она может достигать 520 МБ и постоянно растет.

  • Что именно представляет столбец "РАЗМЕР"?
  • Является ли это поведение приемлемым (нормальным).
  • Повлияет ли перезапуск процесса на производительность (например, потеря кэшированных ресурсов и т.д.)?

1 ответ1

4

Столбец "РАЗМЕР" измеряет использование адресного пространства, которое является виртуальной памятью. Это не дефицитный ресурс, поэтому "чрезмерное" потребление обычно не о чем беспокоиться.

Однако, если он постоянно растет, это может указывать на утечку памяти. Физическая память, скорее всего, не тратится впустую, потому что память не используется, но если память загрязнена, пространство подкачки будет потрачено впустую, и в конечном итоге машине потребуется выполнить операции ввода-вывода для сохранения памяти, чтобы сохранить достаточно свободной физической памяти. ,

Учитывая, что размер резидентного набора не растет, я бы сказал, что, скорее всего, он не загрязнен, а просто использует адресное пространство. Это само по себе не вызывает беспокойства.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .