Потребление виртуальной памяти в Linux после анализа файла журнала
Я написал парсер для чтения auth.log. По какой-то причине при разборе auth.log
я понимаю VSZ
больше, чем общая физическая память, которая 2GB
, В зависимости от размера файла auth.log и продолжительности работы читателя, VSZ
будет увеличиваться (иногда до ~8 ГБ).
Насколько это нормально? Что может быть причиной такого потребления памяти?
# ps aux
USER PID CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 17547 0.7 1.4 3123744 30820 pts/2 Sl+ Jul30 11:42 ./reader auth.log
# free
total used free shared buffers cached
Mem: 2063568 1842232 221336 0 179084 1057680
-/+ buffers/cache: 605468 1458100
Swap: 4032504 288 4032216
1 ответ
Решение
Это нормально. Виртуальная память настолько дешева, практически свободна, что нет смысла пытаться сократить ее потребление.