Memcached - это распределенная система кэширования объектов в памяти с открытым исходным кодом. Он в основном используется для ускорения динамических веб-приложений путем хранения фрагментов данных из результатов вызовов базы данных и рендеринга страниц.
В этом руководстве мы установим и защитим Memcached на Ubuntu 18.04. 
Предпосылки
	- Свежий сервер Vultr Ubuntu 18.04
- Учетная запись пользователя без полномочий root с sudoдоступом
Установка Memcached
Сначала обновите систему:
sudo apt update && sudo apt upgrade -y
Далее установите официальный пакет Memcached; а также libmemcached-tools, который предоставляет несколько утилит для работы с Memcached:
sudo apt install -y memcached libmemcached-tools
Memcached теперь будет установлен как сервис. Вы можете убедиться, что он работает, используя systemctl:
sudo systemctl status memcached
Вывод будет выглядеть следующим образом:
memcached.service - memcached daemon
Loaded: loaded (/lib/systemd/system/memcached.service; enabled; vendor preset: enabled)
  Active: active (running) since Sun 2018-12-16 14:59:06 IST; 3 weeks 4 days ago
Main PID: 3927 (memcached)
   Tasks: 6
  Memory: 2.2M
     CPU: 2min 10.089s
  CGroup: /system.slice/memcached.service
           └─3927 /usr/bin/memcached -m 64 -p 11211 -u memcache -l 127.0.0.1
Настройка Memcached
Давайте свяжем Memcached с локальным интерфейсом, чтобы избежать потенциальных DDOS-атак. Откройте /etc/memcached.confфайл в вашем любимом редакторе:
sudo vi /etc/memcached.conf
Найдите в файле следующую строку и убедитесь, что она не закомментирована:
-l 127.0.0.1
Если эта конфигурация более открыта, вы можете ограничить UDPее, добавив следующую строку в конец файла:
-U 0
Сохраните файл и выйдите.
Перезапустите Memcached, чтобы применить ваши изменения:
sudo systemctl restart memcached
Вы можете проверить, что Memcached связан только с локальным интерфейсом и прослушивает только TCP-соединения с помощью netstat:
sudo netstat -plunt
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
...
tcp        0      0 127.0.0.1:11211         0.0.0.0:*               LISTEN      3927/memcached
...
Есть также несколько других опций, которые можно изменить в /etc/memcached.confконфигурации:
	- -m: Ограничивает объем памяти, доступный для Memcached.
- -p: Указывает, какой порт Memcached должен прослушивать. Порт по умолчанию- 11211.
- -u: Указывает, с каким пользователем будет работать служба. По умолчанию служба будет работать как- root.
- -c: Ограничение количества одновременных подключений. По умолчанию это- 1024.
Проверка настроек Memcached
Теперь вы можете проверить настройку, используя memcstatкоманду из libmemcached-toolsпакета:
memcstat --servers="localhost"
Вывод будет выглядеть следующим образом:
Server: localhost (11211)
         pid: 3927
         uptime: 2217682
         time: 1547170226
         version: 1.4.25
         libevent: 2.0.21-stable
         pointer_size: 64
         rusage_user: 75.436000
         rusage_system: 57.768000
         curr_connections: 1
         total_connections: 53082
   ...
Вывод
В этом руководстве мы рассказали, как установить и настроить Memcached и использовать memcstat для получения статистики. libmemcached-toolsПакет также входит несколько других утилит , которые могут помочь во взаимодействии с Memcached.