Установка и настройка Memcached
14:13, 16.08.2022
Memcached – система кэширования объектов, находящихся в RAM. Установка и настройка Memcached нужна для того, чтобы уменьшить нагрузку на файловую систему и базу данных, ускорив тем самым работу всего веб-сайта. Кэширование позволяет уменьшить количество запросов к базе данных и, как следствие, повысить стабильность и отказоустойчивость всей вашей сетевой инфраструктуры. В мемкэшид можно хранить объекты разного типа, но полезнее всего эта технология в отношении часто запрашиваемых данных. Те же файлы, которые запрашиваются раз в 2-3 дня или реже, лучше хранить в файловом кэше, но здесь всё зависит от архитектуры вашего проекта.
В этой статье мы расскажем, как установить на сервер Memcached и подготовить его к работе.
Установка и настройка Memcached в CentOS 7
На этой ОС всё предельно просто. Сперва установка:
[root@localhost]# yum -y install Memcached
После этого остается запустить сервис и добавить его в автозагрузку:
[root@localhost]# systemctl start memcached [root@localhost]# systemctl enable memcached
Если у вас на сервере отсутствует модуль PHP, его также необходимо установить. Например, из репозитория Remi:
sudo rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm sudo rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm sudo yum install php php-fpm php-gd php-mysql
Если Memcached будет использоваться в режиме TCP, что встречается наиболее часто, то редактировать нужно конфигурационный файл:
[root@localhost]# nano /etc/sysconfig/memcached USER="memcached" PORT="11211" MAXCONN="1024" CACHESIZE="1024" OPTIONS="-t 8 -l 127.0.0.1 -U 0"
Выше указаны значения по умолчанию, но их можно отредактировать. Сами параметры означают следующее:
- MAXCONN – количество одновременных подключений;
- CACHESIZE – объем оперативной памяти, которая выделяется для кэша;
- OPTIONS – число потоков.
После внесения изменений сервис необходимо перезагрузить:
[root@localhost]# systemctl restart memcached
Установка и настройка Memcached в Ubuntu
Для пользователей Ubuntu всё тоже достаточно тривиально:
sudo apt install memcached libmemcached-tools
Вместе с сервисом Memcached устанавливаются также дополнительные утилиты, необходимые для его работы. Что касается настройки, то все манипуляции производятся через файл /etc/memcahced.conf – в нем находятся опции, которые передаются службе в момент запуска.
Что касается назначения опций, то вам необходимо знать следующее:
-d – работать как сервис;
-v – выводит более подробную информацию при работе;
-vv – ещё больше информации;
-m – объем ОЗУ, выделенной сервису для работы (по умолчанию выделяется 64МБ, но этого зачастую мало, так что рекомендуется увеличивать);
-p – номер порта, на котором работает Memcached;
-u – имя пользователя, от имени которого запускается сервис;
-l – IP-адрес, на котором сервис будет дожидаться соединения (рекомендуется указывать 127.0.0.1, так как в этом случае ни у кого из внешней сети не будет доступа к вашим данным);
-с – к-во одновременных подключений;
-P – путь к PID-файлу сервиса в файловой системе.
По сути, вы можете оставить все значения в том виде, в котором они были заданы по умолчанию – менять рекомендуется только IP-адрес и объем выделенной оперативной памяти, так как от неё напрямую будет зависеть эффективность работы Memcached.
Настройка фаервола для Memcached
Для корректной работы Memcached необходимо добавить следующие правила для разрешения соединения:
iptables -A INPUT -p tcp --destination-port 11211 -m state --state NEW -m iprange --src-range 192.168.1.10-192.168.1.15 -j ACCEPT iptables -A INPUT -p udp --destination-port 11211 -m state --state NEW -m iprange --src-range 192.168.1.10-192.168.1.15 -j ACCEPT
После этого проверьте, работает ли сервис на вашей ОС:
$ ps -aux | grep memcached
На этом настройка фаервола завершена, как и наша статья. Если остались вопросы касательно установки и настройки системы кэширования объектов, обращайтесь к нашим специалистам через Livechat.