У меня есть встроенный сервер приложений на основе Geode с 512 МБ ОЗУ, и я собираюсь попытаться максимизировать свободную память во время рабочей нагрузки приложений, которые довольно агрессивно используют базу данных MySQL 5.5 с InnoDB.
В рамках всей оптимизации я хотел бы представить
echo 1 > /proc/sys/vm/drop_caches
sleep 5
echo 0 > /proc/sys/vm/drop_caches
в crontab.
Как часто безопасно выполнять подобное?
Любые другие замечания / предложения приветствуются.
Здесь есть действительно хорошая статья о кешировании в Linux;
http://www.linuxatemyram.com/play.html
Короче говоря, если вы продолжите очищать кеши, чтение с диска займет значительно больше времени, и если вы дочитаете до конца статьи;
Полностью использованный запас оперативной памяти в Linux - это эффективное использование оборудования, а не предупреждение.
Вы можете найти лучшую оптимизацию конфигурации MySQL, которая значительно повысит производительность по сравнению с постоянным удалением кешей из ОЗУ.
У меня был некоторый успех с использованием MySQLTuner.pl -> https://github.com/major/MySQLTuner-perl