В наших компьютерах больше памяти, чем когда-либо. Велика вероятность, что это правда, независимо от того, когда вы это читаете. Тем не менее, сколько бы памяти у вас ни было, ее никогда не бывает достаточно.
Вы можете заполнить свой компьютер или сервер всей необходимой оперативной памятью, и ей всегда найдется применение. В большинстве случаев это хорошо. В конце концов, какой смысл во всей этой оперативной памяти, если вы ею не пользуетесь? С другой стороны, если вы ограничены, нехватка памяти может стать проблемой.
Читайте также: Как проверить доступную память в Ubuntu
Вы уверены в использовании памяти?
Прежде чем приступать к освобождению памяти, необходимо убедиться, что она действительно чем-то используется. Из-за того, как Linux обрабатывает память, может показаться, что что-то использует всю доступную память.
Как объясняет Contents
Вы уверены в использовании памяти?
itle="Linux съел мою оперативную память">Linux съел мою оперативную память , командаtop
, показывающая, что у вас мало памяти, может означать не то, что вы думаете. По умолчанию Linux выделяет неиспользуемую память для кэширования диска, что действительно помогает ускорить работу компьютера.
Тем не менее, могут быть некоторые проблемные службы или приложения, которые на самом деле используют больше оперативной памяти, чем следовало бы.
Диагностика использования памяти
Чтобы диагностировать вашу память, вам нужно будет использовать несколько разных команд. Команда top
хороша для проверки любых приложений, которые могут потреблять слишком много оперативной памяти — только не полагайтесь исключительно на статистику PhysMem, отображаемую вверху.
Вы также можете использовать команды free
и ps
для диагностики проблем с оперативной памятью. Чтобы использовать free
, просто запустите следующее:
free -m
Вы заметите, что цифры «всего» и «использовано» будут одинаковыми. Как мы упоминали выше, это нормальное поведение для Linux, поэтому не беспокойтесь по этому поводу. Самое важное, на что следует обратить внимание, — это раздел «используется» в строке «буферы/кэш», поскольку именно его фактически используют приложения и службы.
Вы можете использовать ps
аналогично top
, чтобы определить, какие приложения используют больше
Диагностика использования памяти
следующее:ps aux
Это покажет вам, какие приложения используют больше всего памяти, и покажет идентификаторы их процессов.
Устранение чрезмерного использования памяти
Есть несколько распространенных причин высокого использования памяти в Linux. Одним из главных нарушителей является Java. Независимо от того, используете ли вы официальную среду выполнения Java или альтернативу, поставляемую GNU, это может вызвать у вас проблемы. Если вы столкнулись с этим на сервере, это может быть вызвано JBoss или Tomcat. Вы найдете их файлы конфигурации примерно следующим образом:
/usr/local/jboss/bin/run.conf /usr/local/tomcat/bin/setenv.sh
Другими виновниками могут быть Apache или MySQL. В задачу этой статьи не входит показать вам, как именно их настроить, но вы можете проверить файлы журналов на наличие ошибок или предупреждений от этих служб.
Заключение
Если вы хотите повысить производительность или устранить проблему, не всегда виновата память. Это зависит от того, что вы ищете, но ваше решение может находиться совершенно в другой части компьютера. Помните об этом.
Не волнуйтесь, какая бы проблема ни возникла, мы можем вам помочь. Если ваш настольный компьютер, ноутбук или сервер работает медленно, взгляните на наш руководство по поиску причины . Даже если это не решит вашу проблему, скорее всего, это поможет вам найти, с чего начать.