Установка и настройка Memcached в CentOS
Руководство по установке и настройке программного обеспечения Memcached в CentOS
Memcached — программное обеспечение, реализующее сервис кэширования данных в оперативной памяти на основе хеш-таблицы.
Также вы можете установить данное приложение при оформлении заказа в один клик. Подробное описание данного One-Click-Apps
Memcached представляет собой сервер, хранящий в оперативной памяти некоторые данные с заданным временем жизни. Доступ к данным осуществляется по ключу (имени). Вы можете думать о Memcached, как о хэш-таблице, хранящейся на сервере. Применяется он в основном для кэширования кода веб-страниц, результатов запросов к базе данных и тп.
Для начала, обновим ОС:
# yum update
После обновления, выполняем установку memcached:
# yum install memcached
Настройка memcached
Отредактируем файл:
$ vim /etc/sysconfig/memcached
Убедитесь, что в данном файле конфигурации имеются следующие строки:
PORT="11211"
USER="memcached"
MAXCONN="256"
CACHESIZE="64"
OPTIONS="-l 127.0.0.1"
-
PORT 11211 является портом прослушивания по умолчанию для Memcached.
-
USER — это пользователь memcached от которого будет запущен демон.
-
MAXCONN — максимальные количество возможных соединений.
-
CACHESIZE — это количество мегабайт (64 MB) для использования, если у вас есть много трафика, это хорошо для большинства малых/средних сайтов. Для загруженного сервера вы можете увеличить его на 512 или 1 Гб (1024 MB).
-
OPTIONS="-l 127.0.0.1" — это означает что memcached будет слушать только на localhost-е, избегая каких-либо внешних подключений. По умолчанию он установлен в INADDR_ANY.
запуск Memcached выполняется:
# systemctl enable memcached
# systemctl start memcached
Установка PHP расширений с Memcached.
выполняем:
# yum install php-pear pecl_http php-devel
И выполняем:
$ pecl install memcache
Если PECL при установке задаст вам вопрос, который вы видите ниже, просто нажмите ENTER:
"Enable memcache session handler support? [yes]"
Перезапускаем службы.
Если на вашем сервере установлен php-fpm, то чтобы перезапустить его, выполните:
# service php-fpm reload
Если на вашем сервере установлен apache, то чтобы перезапустить его, выполните:
# systemctl restart httpd
Тестирование/проверка работы Memcached
Проверка настройки MemCache
Использование следующую команду, чтобы проверить и убедиться, что Memcached служба работает нормально:
$ echo "stats settings" | nc localhost 11211
Теперь нужно проверить, включено ли расширение и удостоверимся что работает правильно. Создайте файл в домашнем каталоге и пропишите следующий ПХП код:
# echo "<?php phpinfo(); ?>" > /var/www/html/php_info.php
Настройка фаэрвола для 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
Проверяем, запущен ли демон memcached на ОС:
$ ps -aux | grep memcached