Я запускаю все свои веб-сайты на выделенном виртуальном сервере объемом 512 МБ, который до сих пор служил мне очень хорошо.
10 января по неизвестной причине потребление памяти увеличилось с 50% до 70-80%. Насколько я помню, в тот день я не вносил никаких изменений в сервер, и ни один из моих веб-сайтов не получал больше трафика, чем обычно, поэтому технически не должно быть причин для более высокого потребления памяти. Единственная возможная причина - это «yum update», при котором будут установлены некоторые обновления, которые могут потреблять больше ресурсов, чем должны.
Тем не менее, 3 дня назад я решил попробовать оптимизировать свой сервер и уменьшить потребление памяти. Я сделал это, выполнив действия, указанные в этой ссылке:
Делаем это лучше - Медиа Храм
Мне удалось выполнить все шаги, кроме модуля FastCGI PHP по сложным причинам. Независимо от этого, шаги имели противоположный эффект, и теперь я, кажется, большую часть времени использую более 100% своей памяти. Обратите внимание, причина, по которой я могу использовать более 100%, заключается в том, что на сервере фактически есть 1 ГБ, но я должен использовать только до 512 МБ.
Я попытался откатить внесенные мной изменения, восстановив сделанные мной файлы конфигурации, но это не дало результата.
Я запустил еще одно 'yum update', которое могло установить приложение, потребляющее ресурсы
К сведению, зеркала, которые я использую для «yum update», являются зеркалами Plesk по умолчанию и Atomic. Это может иметь значение, поскольку проблема может возникнуть в результате того, что я сделал не из-за этого.
Я также побежал за микро-обновлениями, которые, опять же, могли вызвать эту проблему.
Мои вопросы:
Не используйте схему, в которой системе доступно больше памяти, чем вы на самом деле хотите использовать. Операционные системы предполагают, что свободная память тратится впустую, и изо всех сил стараются найти способ ее использовать. Ограничьте ОС только той памятью, которую вы хотите использовать, и у вас не будет проблем.
Свободная память - это как деньги на текущем счете. Если он там есть, привыкнет.
Проверить версию mysql-сервера. Это была моя проблема, sql ел все доступное, кроме расширяемой оперативной памяти. У меня была такая же проблема и у других. Примерно в то же время. Я не нашел решения из-за множества других ошибок, которые у меня были, кроме резервного копирования данных и повторного создания образа сервера.