- How to Install and Configure Memcached on Ubuntu
- Prerequisites
- Installing Memcached in Ubuntu Server
- Configuring Memcached in Ubuntu
- Enabling Memcached for Applications
- Как установить Memcached в Ubuntu 20.04
- Установка Memcached
- Настройка Memcached
- Удаленный доступ
- Подключение к Memcached
- PHP
- Python
- Выводы
- Установка Memcached в Ubuntu
- Как установить Memcached в Ubuntu
- 1. Установка сервиса
- 2. Настройка Memcached
- 3. Запуск сервиса
- 4. Настройка Memcached и Php
- Выводы
How to Install and Configure Memcached on Ubuntu
Memcached is a free and opensource in-memory caching system that speeds up web applications by caching large volumes of data in memory that are generated from page load requests or API calls. Memcached is particularly useful in speeding up PHP-based web applications such as WordPress, Joomla, Drupal, and Python applications as well.
In this tutorial, we look at how you can install Memcached on Ubuntu. For demonstration purposes, we will use Ubuntu 20.04 Focal Fossa. Granted, the same guide will apply for Ubuntu 16.04 and later versions.
Prerequisites
As we move along, ensure you have the following in check:
Let’s now roll our sleeves and dive in.
Installing Memcached in Ubuntu Server
Before installing Memcached, let’s first update the package list of the packages installed using apt command.
This should take a minute or two depending on the speed of your internet connection. Once the update is complete, install Memcached by running the command below. This will install Memcached alongside other dependencies and packages.
$ sudo apt install memcached libmemcached-tools
When prompted, press ‘Y’ on the keyboard and hit ENTER to proceed with the installation.
Once installed, the Memcached service should start automatically. This can be verified by checking the status of Memcached as follows.
$ sudo systemctl status memcached
The output confirms that Memcached is up and running.
Configuring Memcached in Ubuntu
The default configuration file for Memcached is /etc/memcached.conf. It’s also important to mention that by default, Memcached listens on port 11211 and is configured to listen on the localhost system. You can confirm this by checking the configuration file on line 35 as shown.
$ sudo nano /etc/memcached.conf
If the application connecting to the Memcached service is sitting on the same server where Memcached is installed, then there’s no need to make changes to this line. However, if you have a remote client that you want to allow access to Memcached caching service, then you need to edit this line & add the remote client’s IP address.
Suppose, you have a remote client with IP 192.168.2.105 running an application that needs to connect to the Memcached service. To allow access, simply delete the localhost IP address (127.0.0.1) and replace it with the remote client’s IP address. The assumption here is that both systems are in the same Local area network.
Save and exit the configuration file.
Next, restart the Memcached service to apply the changes.
$ sudo systemctl restart memcached
Lastly, to allow remote connections to the Memcached server, we need to open the Memcached default port – port 11211 – on the firewall.
To achieve this run the commands:
Then reload the firewall to apply the changes.
To verify that the port is open, execute:
Enabling Memcached for Applications
Depending on the application you are running, you need to install a language-specific client to enable Memcached to serve the requests.
For PHP applications such as Joomla or WordPress, execute the command below to install the additional packages:
$ sudo apt install php-memcached
For Python applications, ensure that the following Python libraries are installed using the pip package manager.
$ pip install pymemcache $ pip install python-memcached
And this wraps up our topic on how to install and configure Memcached on Ubuntu. Your feedback will be much appreciated.
Как установить Memcached в Ubuntu 20.04
Memcached — это бесплатное высокопроизводительное хранилище данных типа «ключ-значение» в памяти с открытым исходным кодом. Обычно он используется для ускорения приложений путем кеширования различных объектов из результатов API и вызовов базы данных.
В этой статье показано, как установить и настроить Memcached в Ubuntu 20.04.
Установка Memcached
Пакет memcached включен в репозитории Ubuntu 20.04 по умолчанию. Чтобы установить его, введите следующую команду от имени пользователя root или пользователя с привилегиями sudo :
sudo apt update
sudo apt install memcached libmemcached-tools
Пакет libmemcached-tools предоставляет утилиты командной строки, которые можно использовать для управления сервером memcached.
После завершения установки служба memcached запустится автоматически. Чтобы проверить статус услуги, введите:
sudo systemctl status memcached
Результат будет выглядеть примерно так:
● memcached.service - memcached daemon Loaded: loaded (/lib/systemd/system/memcached.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2020-07-13 19:32:01 UTC; 23s ago
Вот и все, вы установили memcached на свой сервер Ubuntu 20.04 и можете начать его использовать.
Настройка Memcached
Параметры Memcached можно настроить в файле /etc/memcached.conf . По умолчанию memcached настроен на прослушивание только на локальном хосте.
Для большинства пользователей достаточно настроек конфигурации по умолчанию.
Удаленный доступ
Если клиент, подключающийся к memcached, работает на том же хосте, вы не должны разрешать удаленный доступ.
При неправильной настройке memcached может использоваться для выполнения распределенной атаки типа «отказ в обслуживании» (DDoS). Чтобы разрешить удаленный доступ к серверу memcached, вам необходимо настроить брандмауэр и открыть UDP-порт 11211 memcached только от доверенных клиентов.
В следующем примере предполагается, что вы хотите подключиться к серверу memcached через частную сеть. IP-адрес сервера memcached — 192.168.100.20 , а IP-адрес клиента — 192.168.100.30 .
Первый шаг — отредактировать конфигурацию memcached и настроить службу на прослушивание через частный сетевой интерфейс сервера:
Для этого откройте файл конфигурации memcached.conf :
sudo nano /etc/memcached.conf
Найдите строку, которая начинается с -l 127.0.0.1 и замените 127.0.0.1 на IP-адрес сервера 192.168.100.20 .
Перезапустите службу Memcached, чтобы изменения вступили в силу:
sudo systemctl restart memcached
После настройки службы следующим шагом будет открытие порта memcached в брандмауэре .
sudo ufw allow from 192.168.100.30 to any port 11211
Подключение к Memcached
Существует множество реализаций клиентов memcached, написанных для разных языков программирования.
PHP
Чтобы использовать Memcached в качестве кэширующей базы данных для вашего PHP- приложения, такого как WordPress, Drupal, Joomla или Magento, вам необходимо установить расширение php-memcached :
sudo apt install php-memcached
Python
Есть несколько библиотек Python для взаимодействия с memcache. Вы можете установить предпочитаемую библиотеку с помощью pip :
pip install python-memcached
Выводы
Мы показали вам, как установить Memcached в Ubuntu 20.04. Для получения дополнительной информации по этой теме обратитесь к Memcached Wiki .
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии ниже.
Установка Memcached в Ubuntu
Memchached — это популярный сервер кэширования данных в оперативной памяти. С помощью него можно существенно увеличить производительность различных веб-приложений. Сам по себе Memcached позволяет только сохранять пары ключ-значение в памяти и быстро получать к ним доступ. Обычно Memcached используется вместе с каким-либо языком программирования. Например с Php, Python или серверным JavaScript.
Также сервис может использоваться для кэширования различных объектов веб-серверами, такими, как Apache или Nginx. В этой статье мы разберём установку Memcached в Ubuntu 18.04, а также основные настройки программы.
Как установить Memcached в Ubuntu
1. Установка сервиса
Сама по себе установка Memcached не вызовет проблем. Вам достаточно выполнить такую команду:
sudo apt install memcached libmemcached-tools
Вместе с самим сервисом мы устанавливаем набор дополнительных утилит для более простого управления Memcached. На этом установка завершена.
2. Настройка Memcached
Настройка Memcached Ubuntu выполняется через файл /etc/memcahced.conf. В этом файле содержаться опции, которые будут переданы сервису при запуске:
- -d — работать в режиме сервиса;
- -v — режим более подробного вывода информации;
- -vv — ещё более подробный вывод информации;
- -m — количество оперативной памяти, которую будет использовать сервис, рекомендую увеличить этот параметр, так как значения 64 мегабайта, установленных по умолчанию, будет мало;
- -p — порт, на котором будет работать сервис;
- -u — пользователь, от имени которого запущен сервис;
- -l — IP-дрес, на котором Memcached будет ожидать соединения, лучше использовать 127.0.0.1, чтобы из внешней сети ни у кого не было доступа к вашим данным;
- -с — количество одновременных подключений;
- -P — путь к PID-файлу сервиса в файловой системе.
Таким образом, большинство опций можно оставить по умолчанию. Изменить нужно только объём оперативной памяти и IP-адрес.
3. Запуск сервиса
Даже если сервис был запущен по умолчанию, после изменения настроек его нужно перезапустить:
sudo systemctl restart memcached
Можно ещё убедиться, что Memcached работает именно на том IP и порте, которые нам нужны:
Затем вы можете посмотреть статистику использования сервиса командой:
Работать с Memcached мы можем уже сейчас. Для этого нужно использовать Telnet. Подключаемся к серверу:
Если подключение прошло успешно, вы увидите такое сообщение:
Используйте команду stats, чтобы получить общую статистику, которую мы видели в выводе команды memcstat:
Для того, чтобы сохранить данные, используется команда add. У неё такой синтаксис:
add имя_ключа флаги время_хранения размер_данных
данные
Флаги — это целое число, которое хранится вместе с данными, и вместе с ними возвращается пользователю, можно просто оставить 0. Время хранения — это время в секундах, сколько будут хранится эти данные, 0 означает вечно. Размер данных в байтах определяет, сколько памяти будет задействовано под эти данные. Далее нужно нажать Enter и ввести данные, которые нужно сохранить. Например, сохраним строку memcached в ключе key навсегда:
Получить значение сохранённого ключа можно командой get:
А удалить этот ключ командой delete:
А вот посмотреть список всех ключей в Telnet так просто не получится. Сначала нужно посмотреть список хранилищ:
А затем командой stats cachedump можно вывести список ключей хранилища. Первый параметр — это идентификатор хранилища, а второй — лимит ключей для вывода:
Для выхода наберите команду quit. С помощью команды memcdump вы можете вывести список всех сохраненных ключей:
А с помощью memccat можно вывести значение нужного ключа:
memccat key —servers=127.0.0.1
Но все эти возможности используются только для отладки. Для реального хранения данных используются клиенты memcached для разных языков программирования. Их очень просто установить. Давайте рассмотрим это на примере Php.
4. Настройка Memcached и Php
Давайте рассмотрим настройку библиотеки Memcached для Php. Чтобы её установить, выполните:
sudo apt install php-memcached
Затем перезапустите apache, если хотите использовать модуль на веб-сервере:
sudo systemctl restart apache2
Далее вы можете убедится, что модуль активирован, вызвав функцию phpinfo():
Выводы
В этой статье мы разобрали, как выполняется установка Memcached Ubuntu, а также как использовать этот сервис для кэширования данных из командной строки или в PHP. Не забудьте убедиться, что сервис слушает подключения только на локальном IP- адресе, поскольку здесь нет аутентификации, и к вашим данным смогут получить доступ другие пользователи. Также это может быть небезопасным из-за того, что в Memcached были найдены уязвимости, которые позволяют осуществлять атаку типа отказ в обслуживании.
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.