Memcached - это бесплатное высокопроизводительное хранилище ключевых значений в памяти с открытым исходным кодом. Обычно он используется для ускорения работы приложений путем кэширования различных объектов из результатов вызовов API и баз данных.
Предварительные условия
Вам нужно войти в систему как пользователь с доступом sudo, чтобы иметь возможность устанавливать пакеты в системе Debian.
Установка Memcached в Debian
Пакет memcached включен в репозитории Debian по умолчанию. Чтобы установить его, введите следующую команду от имени root или пользователя с привилегиями sudo :
1 | sudo apt update |
1 | sudo apt install memcached libmemcached-tools |
Пакет libmemcached-tools предоставляет несколько инструментов командной строки для взаимодействия с сервером Memcached.
После завершения установки служба Memcached запустится автоматически. Вы можете убедиться в этом, проверив статус службы:
1 | sudo systemctl status memcached |
Вывод будет выглядеть следующим образом:
Вот и все. Вы успешно установили Memcached на свой сервер Debian.
Настройка Memcached
Параметры Memcached можно настроить в файле /etc/memcached.conf. Параметры конфигурации по умолчанию достаточны для большинства пользователей.
Удаленный доступ
Служба Memcached прослушивает только localhost. Если клиент, подключающийся к серверу, также работает на том же хосте, вам не нужно изменять конфигурационный файл по умолчанию.
При неправильной настройке Memcached может быть использован для проведения распределенной атаки типа "отказ в обслуживании" (DDoS). Чтобы разрешить удаленные подключения к серверу Memcached, необходимо настроить брандмауэр и разрешить доступ к UDP-порту 11211 Memcached только доверенным клиентам.
В следующем примере предполагается, что вы подключаетесь к серверу Memcached через частную сеть. IP-адрес сервера - 192.168.1.20, а IP-адрес клиента - 192.168.2.30.
Первым шагом будет редактирование конфигурации memcached и установка службы для прослушивания на частном сетевом интерфейсе сервера:
Для этого откройте файл конфигурации memcached.conf:
1 | sudo nano /etc/memcached.conf |
Найдите строку, которая начинается с -l 127.0.0.1, и замените 127.0.0.1 на IP-адрес сервера 192.168.1.20.
1 | -l 192.168.1.20 |
Перезапустите службу Memcached, чтобы изменения вступили в силу:
1 | sudo systemctl restart memcached |
Когда служба настроена, следующим шагом будет открытие порта memcached в брандмауэре.
1 | sudo ufw allow from 192.168.2.30 to any port 11211 |
Теперь вы можете подключиться к серверу Memcached с удаленного места.
Подключение к Memcached
Существует множество реализаций клиентов memcached, написанных для различных языков программирования.
PHP
Чтобы использовать Memcached в качестве кэширующей базы данных для вашего PHP-приложения, такого как WordPress, Drupal или Magento, вам необходимо установить расширение php-memcached:
1 | sudo apt install php-memcached |
Python
Существует несколько библиотек Python для взаимодействия с memcache. Вы можете установить предпочитаемую библиотеку с помощью pip :
1 2 | pip install pymemcache pip install python-memcached |
Заключение
Мы показали вам, как установить Memcached в Debian. Для получения дополнительной информации по этой теме, обратитесь к Memcached Wiki.