Очистить / очистить кэш-память

У меня есть небольшой VPS с 6 ГБ оперативной памяти, на котором размещено несколько сайтов.

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

    Cpu(s):  0.1%us,  0.1%sy,  0.0%ni, 99.1%id,  0.0%wa,  0.2%hi,  0.4%si,  0.0%st
    Mem:   6113256k total,  5949620k used,   163636k free,   398584k buffers
    Swap:  1048564k total,      104k used,  1048460k free,  3586468k cached

После исследования, есть ли какой-нибудь метод, чтобы очистить или очистить это, я наткнулся на команду, которая:

    sync; echo 3 > /proc/sys/vm/drop_caches

Я читал, что может быть полезно добавить это в chron-task/job. Этот метод рекомендуется или это может привести к потенциальным проблемам?

Единственное, что меня беспокоит, это то, что я использую одну установку Magento на Memcached - это может иметь какие-либо негативные последствия для нее?

Я, конечно, не профессионал, поэтому я был бы очень признателен за совет специалиста.

PS: Мой VPS работает на CentOS 5 x64, и у меня установлен WHM + NGINX.

3 ответа

Решение

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

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

Относительно данных, хранящихся в memcached - это безопасно от сбрасывания кэшей страницы /dentries/inodes.

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

Если вы любопытный тип, то вы можете настроить параметр vm.vfs_cache_pressure. Значение по умолчанию равно 100, что означает, что ядро ​​будет пытаться восстановить кэш с разумной скоростью по сравнению с восстановлением свопа. Увеличение значения приведет к более быстрому восстановлению кэшированной памяти, а уменьшение - к более быстрому восстановлению подкачки, но помните, что агрессивность ядра по очистке кеша или подкачки такова. Фактические результаты варьируются от среды к среде.

Вместо эха 3 вы также можете повторить 1 или 2. Если я правильно помню, эхо 1 очистит кэш страницы, а 2 очистит кэш-память и индексный кэш-память. 3 очистит кеширование страниц, кэш-памяти и кэши узлов.

Нет никакого реального вреда в том, что этот уровень кэшированной оперативной памяти. Это то, что делает Linux.

Вы видите какой-нибудь прирост производительности после удаления кешей? Если нет, то это не стоит планировать.

Кроме того, вы можете управлять тем, что находится в кеше, с большей степенью детализации, используя vmtouch утилита

Другие вопросы по тегам