Перейти к содержимому

Установка Memcached

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

С помощью клиентской библиотеки (для C/C++, Ruby, Perl, PHP, Python, Java, .Net и др.) позволяет кэшировать данные в оперативной памяти множества доступных серверов. Распределение реализуется путём сегментирования данных по значению хеша ключа по аналогии с сокетами хеш-таблицы. Клиентская библиотека, используя ключ данных, вычисляет хеш и использует его для выбора соответствующего сервера. Ситуация сбоя сервера трактуется как промах кэша, что позволяет повышать отказоустойчивость комплекса за счет наращивания количества memcached-серверов и возможности производить их горячую замену.

В API memcached есть только базовые функции: выбор сервера, установка и разрыв соединения, добавление, удаление, обновление и получение объекта, а также Compare-and-swap. Для каждого объекта устанавливается время жизни, от 1 секунды до бесконечности. При исчерпании памяти более старые объекты автоматически удаляются. Для PHP также есть уже готовые библиотеки PECL для работы с memcached, которые дают дополнительную функциональность.

По умолчанию memcached использует порт 11211

Выполняем установку пакетов:

Создаем или открываем на редактирование конфигурационный файл для запуска сервиса:

Приводим его к виду: 

* где PORT указываем на каком порту будет слушать сервис кэширования; USER — пользователь, под которым должен запускаться сервис; MAXCONN — максимальное число одновременных подключений; CACHESIZE — размер под кэш в мегабайтах; OPTIONS — параметры запуска (в данном примере наш сервис будет принимать запросы только с адреса локальной петли).

После разрешаем автозапуск и запускаем сервис кэширования:

Модуль для php

Устанавливаем пакеты, необходимые для сборки php-pecl-memcached:

Если не установлен репозиторий PowerTools:

Запускаем компиляцию и сборку php-расширения:

Создаем конфигурационной файл для подключения расширения:

После установки модуля перезапускаем …

а) Apache:

б) или php-fpm:

Чтобы убедиться в этом, вводим следующую команду:

* в данном примере веб-сервер использует интерпретатор для PHP.

Проверка

Чтобы проверить, что модуль memcached работаем смотрим статус в phpinfo:

… или вводим команду:

Мы должны получить:

Опубликовано вLinux

Ваш комментарий будет первым

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *