У меня есть VPS на базе OpenVZ под управлением CentOS 7.4 (Linux hostname 2.6.32-042stab116.2 #1 SMP Fri Jun 24 15:33:57 MSK 2016 x86_64 x86_64 x86_64 GNU/Linux
).
Рабочая нагрузка - это одно приложение Java. В соответствии с top
, процесс Java потребляет около 3,3 ГБ физической памяти из 4 ГБ доступной памяти. Однако в то же время указанное общее использование памяти меньше 128 МБ!
Обратите внимание, что указанный размер буфера / кеш-памяти составляет около 3800 МБ. Я просмотрел несколько вопросов и статей о показаниях памяти в top
, но ни один из них, похоже, не объясняет эту конкретную ситуацию.
Возможно ли, что большая часть памяти, присвоенная Java как RES, на самом деле является удаляемыми буферами? Отслеживает ли ядро «процессы-владения» даже для кэшированной памяти? Или это просто неточность из-за виртуализации и / или старой версии ядра?