@neothesilent

Что делать, если Memcached уходит в своп?

Здравствуйте,

Подскажите, как быть, если Memcached уходит в своп? На виртуальной машине стоит CentOS 7.2, Nginx, Memcached, Php-fpm, MariaDB и Bitrix. Ресурсов выделено 8cpu, 12gb ram.

Настройки memcached:
PORT="11211"
USER="memcached"
MAXCONN="1024"
CACHESIZE="1024"
OPTIONS="-l 127.0.0.1"

Использую команду для нахождения процесса, которые больше всего свопят:
for file in /proc/*/status ; do awk '/VmSwap|Name/{printf $2 " " $3}END{ print ""}' $file; done | sort -k 2 -n -r | less

memcached 99000 kB
mysqld 17052 kB

Пробовал также, проверять через vmstat и там периодически появляются значения в колонках si , so. В итоге примерно за день своп забивается полностью. Я сбрасывал своп командой, но за половину дня он набирает около 200 мб.

swapoff -a && swapon -a

total        used        free      shared  buff/cache   available
Mem:            12G        5,8G        631M        540M        6,1G        5,9G
Swap:          1,0G        163M        860M
  • Вопрос задан
  • 921 просмотр
Решения вопроса 1
landergate
@landergate
IT-шный jack-of-all-trades
Что делать, если Memcached уходит в своп?

  • Снизить swapiness.
  • Отключить swap.


Предсказуемо управлять тем, когда приложение уйдёт в своп, невозможно, поэтому на серверах, где такое нежелательно, своп проще выключить. Разумеется планируя и мониторя RAM других приложений, чтобы они не крэшились.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
@DuD
Для 12GB RAM, своп размером в 1гб выглядит маловато.
Но возможно ситуацию спасет изменение параметра swapinnes.
Первое что попалось в гугле: fx-files.ru/archives/704
Ответ написан
Комментировать
begemot_sun
@begemot_sun
Программист в душе.
Считаю что swap на сервере это только не гуд.
Ответ написан
Frankenstine
@Frankenstine
Сисадмин
Ничего страшного что мэмкэш что-то положил в своп - оно ему просто не нужно в данный момент. Сами же видите, что у вас почти половина памяти никак не используется, значит в своп упало только потому что давно не используется. Не хотите чтобы туда что-то попадало - тупо отключите своп.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы