Установка memcached на веб сервере nginx php-fpm без Apache
название сайта
Авторизация

Установка memcached на веб сервере nginx + php-fpm

+1
Вебмастер0 комментариев
Nginx с поддержкой PHP-FPM и Memcached

Веб сервер Nginx с поддержкой PHP-FPM и Memcached позволяет повысить производительность веб-сайтов и веб-приложений. 


Работа Memcache на веб сервере


Memcached - это бесплатная высокопроизводительная программа для кэширования объектов с открытым исходным кодом. Она позволяет кэшировать повторяющиеся вызовы объектов и баз данных PHP в системной памяти, что помогает значительно ускорить динамические веб-приложения.

Memcached - это хранилище ключей и значений в памяти для небольших фрагментов произвольных данных (строк, объектов) из результатов вызовов базы данных, вызовов API или рендеринга страницы.

Использование Memcached с Nginx, PHP-FPM на вашем WordPress или других веб-сайтах или блогах CMS - отличный способ улучшить их производительность. 

Memcached - это простая, но мощная программа кэширования, которую веб-мастера и владельцы веб-сайтов должны по возможности использовать.

Это краткое руководство поможет установить и настроить Memcached на сервере, где не используется Apache.

Мы не будем рассказывать как установить и настроить веб сервер, мы сосредоточимся на установке и интеграции Memcache в веб сервер со связкой Nginx + PHP-FPM.



Установка Memcache


Для начала, нужно обновить систему. Мы решили описать процесс установки на Ubuntu 18 с PHP 7.2

Для этого запустим поочередно две команды.

$ sudo apt update
$ sudo apt upgrade


После чего займемся установкой и настройкой пакетов.



Сервис memcache


Для установки пакета, запустим команду.

$ sudo apt install memcached



php fpm


Пакет, входящий в дистрибутив не работает с php 7.X, поэтому устанавливаем через pecl На машине, где установлен PHP fpm.

sudo apt-get -y install pkg-config php7.2-dev php-pear zlib1g-dev libmemcached-dev
sudo pecl install memcached



Создаем файл memcached.ini в директории /etc/php/7.2/mods-available/ с содержимым.

; priority=25
extension=memcached.so



Далее, создадим симлинк на данный файл, при помощи команды.

sudo ln -s /etc/php/7.2/mods-available/memcached.ini /etc/php/7.2/fpm/conf.d/20-memcached.ini


После чего, нужно отредактировать файл Редактируем файл php.ini, находящийся в директории /etc/php/7.2/fpm/

Если у Вас версия PHP отличается от 7.2, следовательно и путь будет отличаться цифрами.


Находим в файле такие строки.

[Session]
; Handler used to store/retrieve data.
; http://php.net/session.save-handler
session.save_handler = files


После редактирования, кусок кода должен выглядеть так.

[Session]
; Handler used to store/retrieve data.
; http://php.net/session.save-handler
;session.save_handler = files
session.save_handler = memcached
session.save_path = "ip_addr_memcashed_service:11211"

Где session.save_path - это адрес и порт сервера, где установлен сам сервис memcache.


Осталось перезапустить сервис php fpm и Nginx, для того чтобы изменения вступили в силу.


sudo systemctl restart nginx
sudo systemctl reload php7.2-fpm 




Проверка работы memcached



Многие спрашивают как проверить работу memcached?

Для проверки работы memcached необходимо создать в корне вашего веб сайта файл info.php с содержимым. 


<?php
// Показывать всю информацию, по умолчанию INFO_ALL
phpinfo();
// Показывать информацию только о загруженных модулях.
// phpinfo(8) выдает тот же результат.
phpinfo(INFO_MODULES);
?>


Зайдя на ваш сайт по адресу https://ваш-сайт.ru/info.php вы увидите вот такое окно.

Если memcached работает, то вы увидите вот такие строки на экране вашего монитора. 


Проверка работы Memcached

Заключение. Установив и настроив кэширование на вашем веб сервере, вы не только обеспечите быструю работу сайта, но и уменьшите нагрузку на сервер.
Читайте также

Отметьте картинки:*
new.thin.kiev.ua
Авторизация