Memcached - это система кэширования объектов памяти, специально разработанная для повышения скорости работы динамических веб-приложений за счет снижения нагрузки на сервер базы данных. Если объяснять использование Memcached простыми словами, то она помогает вам забирать память из той части вашей системы, где она не нужна, и распределять ее в ту часть памяти, где требуется больше памяти. Таким образом, в основном вашим веб-серверам не приходится иметь дело с кэшем, большинство разработчиков выделяют отдельные машины для работы с кэшем.
В этом руководстве подробно рассмотрены два различных метода установки Memcached, а также его базовая конфигурация на Ubuntu.
Как установить Memcached в Ubuntu
Существует два различных метода установки Memcached на Ubuntu: либо из репозитория по умолчанию с помощью менеджера пакетов apt, либо путем загрузки tar-пакета с официального сайта.
Способ 1: Как установить Memcached в Ubuntu из репозитория по умолчанию
Первый и простой способ установки Memcached на Ubuntu - это установка из репозитория по умолчанию, для чего мы воспользуемся менеджером пакетов apt:
1 | sudo apt install memcached libmemcached-tools -y |
Чтобы убедиться в успешном выполнении вышеуказанной команды, мы узнаем информацию об установленной версии Memcached с помощью команды:
1 | memcached --version |
Используя команду systemctl, мы проверим статус memcached:
1 | sudo systemctl status memcached |
Чтобы удалить memcached из Ubuntu со всеми его конфигурационными файлами, воспользуемся командой purge в менеджере пакетов apt:
1 | sudo apt purge memcached libmemcached-tools -y |
Метод 2: Установка Memcached в Ubuntu путем загрузки tar-пакета
Другой способ установки Memcached на Ubuntu - это загрузка его заархивированного пакета с официального сайта с помощью команды wget:
1 | wget -c https://memcached.org/latest |
Распакуйте заархивированный файл, чтобы получить доступ к его содержимому, используя команду:
1 | tar -zxvf latest |
Перейдите в каталог memcached с помощью команды cd:
1 | cd memcached-1.6.17 |
Теперь установите пакет libevent-dev, поскольку он является зависимостью memcached:
1 | sudo apt install libevent-dev -y |
Так нам потребуются дополнительные утилиты, необходимые для сборки
1 | sudo apt install make build-essential -y |
Теперь мы настроим, скомпилируем все файлы с помощью команды make, а затем установим все скомпилированные файлы:
1 | ./configure --prefix=/usr/local/memcached && make && sudo make install |
Копируем файл memcached.service, для создания и запуска сервиса
1 | sudo cp scripts/memcached.service /etc/systemd/system/memcached.service |
и копируем файл конфигурации
1 2 | sudo mkdir -p /etc/sysconfig/ sudo cp scripts/memcached.sysconfig /etc/sysconfig/memcached |
Как настроить Memcached в Ubuntu
Для настройки мы откроем его файл конфигурации, в зависимости от типа установки, с помощью любого текстового редактора.
При установке через apt
1 | sudo nano /etc/memcached.conf |
При установке из tar
1 | sudo nano /etc/sysconfig/memcached |
В OPTIONS добавьте " -l 0.0.0.0", что бы прослушивать все доступные интерфейсы, либо конкретный IP, если это требуется.
Если удаленное подключение не требуется, установите значение как "-l 127.0.0.1"
1 | OPTIONS="-l 0.0.0.0" |
Остановите службу Memcached с помощью команды systemctl:
1 | sudo systemctl stop memcached.service |
Теперь снова запустите службу:
1 | sudo systemctl start memcached.service |
Также включите службу Memcached в вашей системе:
1 | sudo systemctl enable memcached.service |
И разрешите трафик на вашем IP-адресе на порт 11211 с помощью команды ufw:
1 | sudo ufw allow from [IP] to any port 11211 |
Где [IP] - адрес сервера с которого будет осуществляться подключение.
Использование Memcached в качестве кэширующей базы данных
Существует несколько способов подключения к Memcached.
Если ваше приложение основано на PHP, например, WordPress, Joomla или Drupal, и вы хотите подключить Memcached как кэширующую базу данных, установите php-memcached с помощью команды:
1 | sudo apt install php-memcached |
Для приложений на базе Python:
1 2 | pip install pymemcache pip install python-memcached |
Заключение
Memcached - это приложение с открытым исходным кодом, которое используется для запуска динамических веб-приложений на базе php путем снижения нагрузки на их базы данных, что позволяет ускорить работу этих приложений. В этой статье мы рассмотрели два метода установки Memcached на Ubuntu: один с помощью репозитория по умолчанию, а другой - путем загрузки zip-пакета с сайта компании.