Как снизить нагрузку на оперативную память в Linux (VPS)?

Здравствуйте.
Оперативная память: 991 MiB
ОС: Ubuntu 16
Nginx + Apache (php)

Проблема в том, что оперативная память постоянно заполняется, заполняется мгновенно, за 20 минут может забиться 300 мегабайт. Как только остается свободного места ~70 мегабайт, так могу получить падение сайта и ошибку в логе такого вида:
[Fri May 11 16:04:32.369104 2018] [mpm_itk:error] [pid 3620] child died with signal 7

На данный момент добавил в планировщик команду (каждые 20 минут):
sync; echo 3 > /proc/sys/vm/drop_caches
Но это мне кажется плохим решением...
На утечку памяти в PHP, думаю, грешить не стоит, так как посещаемость не большая, да и за 20 минут, 300 mb наврятли бы утекло...

Подскажите, как можно снизить нагрузку на оперативку? Или хотя бы сделать, чтобы в памяти всегда оставалось свободное место, пусть даже 300 mb.

free -m на момент написания поста:
total        used        free      shared  buff/cache   available                                    
Mem:            991         518         198          87         275         233                                    
Swap:             0           0           0

Спасибо.
  • Вопрос задан
  • 462 просмотра
Пригласить эксперта
Ответы на вопрос 2
@Reversaidx
Встряли ошибки связаны, при недостатки памяти вызывается OOMKiller, у вас такого нет.
То что параметр free уменьшается не является ошибкой проблемой или чем-то особенным(это нормально для ОС Linux из-за активного кэширования).
Я бы в первую очередь удалил бы устаревший ITK вместо него поставил Prefork, ограничил максимальное количество клиентов к веб серверу. Если установлены модули прекомпиляции по типу Xcache можно попробывать их удалить(в случае Xcache попытаться заменить на Opcache)
Ответ написан
@ProFfeSsoRr
Сис.админ по Linux
Во-первых советую прочесть https://habr.com/post/53236/
Во-вторых - смотреть, что получится после первого шага :)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы