Очистить / очистить кэш-память
У меня есть небольшой 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
утилита