Как я могу освободить память / управлять памятью в Linux-окне?

Я запускаю два сервера Ubuntu 12.04 (без GUI / desktop), используя канонические изображения облаков на Amazon EC2 . Один из них – 613MB с 613MB ОЗУ, а один – это среда с 3.75GB оперативной памяти.

У меня есть только шеф-повар opscode, установленный на micro боксе, и на большом ящике у меня есть индекс java app / SOLR, инициализированный 2048 МБ оперативной памяти:

 JAVA_OPTIONS="-server -Xms2048m -Xmx2048m -XX:+UseParallelGC -XX:NewRatio=5" 

Если у меня был chef работающий на микро-боксе, а затем попробуйте установить новую программу или запустите что-то вроде RabbitMQ или Apache2 я получу ошибку о том, что у вас недостаточно свободной памяти для завершения операции.

На большой коробке кажется, что приложение Java будет периодически сбой, когда память станет низкой, или после того, как ящик был включен некоторое время.

Используя команду free / free -m я вижу, что на самом деле не так много памяти, и в этот момент мне обычно приходится перезагружать систему, чтобы «очистить» память.

Похоже, что либо память должна быть автоматически освобождена или «очищена» через некоторый момент времени, или если это необходимо сделать вручную, может быть лучший способ освободить / очистить / управлять памятью более эффективно.

Есть ли способ, который я могу вручную освободить / очистить память системы? Есть ли инструмент, который будет автоматически проверять / очищать память?

  • multicast включен на ubuntu?
  • Скомпилируйте источник с более поздними библиотеками на одном сервере и используйте двоичный файл на более старом сервере
  • Получение информации об использовании ленты SCSI
  • Использование Ubuntu Server в качестве DHCP и DNS-сервера для пересылки URL-адресов на IP-адреса
  • Воспроизведение потока RTMP из командной строки
  • Дублируйте источники в APT-файлах Ubuntu 14.10, они в порядке?
  • Оптимизировать / заменить команду «найти»
  • переключение между оболочками, остановка воспроизводимой музыки
  • 2 Solutions collect form web for “Как я могу освободить память / управлять памятью в Linux-окне?”

    Необходимость перезагрузки, конечно, не имеет большого смысла – если ваша память заполнена, она должна быть заполнена чем-то , и если вы остановите этот процесс (например, приложение java), тогда эта память будет освобождена.

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

    То есть, первое, что вам нужно сделать, это выяснить, какое именно программное обеспечение вызывает эту проблему; Для этого обычно используются такие инструменты, как top . Вы также можете быть заинтересованы в plog .

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

     sync && echo 3 | sudo tee /proc/sys/vm/drop_caches 

    в основном, что вы здесь делаете, вы совершаете операции записи на диск, кэшированные в память, на диск (ы) и очищаете части кеш-памяти. Но если ваша система настроена нормально, это должно начаться, как только вы закончите выполнение этой команды. Но это может дать вам мгновенное облегчение, чтобы преодолеть сообщение «недостаточно памяти». И если сбой на диске не удался, команда drop cache не будет работать, как вы можете видеть из команды «&&», поэтому это скорее безопасный вариант.

    Interesting Posts

    OracleSolaris 11.2 – удалить каталог, который является точкой монтирования

    Перемещение / загрузка раздела без испорчения системы

    Как добавить приложение в раздел «Избранное» в меню «Приложения» в CentOS 7?

    Как настроить autofs для работы с usbsticks, отформатированными в разных файловых системах

    Ошибка выхода из сценария из командной подстановки

    Как автоматически сортировать флаги параметров в руководстве?

    Не удалось скопировать из tmux (2.4+) в буфер обмена OS X

    Как продлить раздел VMware на Centos 7 с помощью GParted?

    Китайские иероглифы, а не латинский, записываются в файл

    Как установить размер окна tmux в сеансе, запущенном cron?

    Где фактически передаются аргументы командной строки (например, «some.text»)?

    Какой драйвер для Intel HD Graphics следует установить?

    Где исполняемые файлы ищут общие объекты во время выполнения?

    Моя установка debian не имеет среды для рабочего стола, и нет доступа в Интернет

    Как получить имя файла устройства из вывода lsusb или по пути устройства

    Linux и Unix - лучшая ОС в мире.