Краткое разъяснение конфигурационных
директив.
-
memcached.sess_locking
bool
-
Использовать блокировку сессий. Допустимые значения: On
, Off
. По умолчанию — On
.
-
memcached.sess_consistent_hash
bool
-
Если установлено значение On
, то для обработки сессий будет использовано согласованное хеширование (libketama).
При использовании согласованного хеширования можно
добавлять или удалять узлы кеширования без больших потерь кешированных ключей.
По умолчанию — On
.
-
memcached.sess_binary
bool
-
Использовать бинарный режим сессии. Реплики модуля libmemcached работают только
если включён этот режим. По умолчанию — Off
.
-
memcached.sess_lock_wait
int
-
Время ожидания повторной синхронизации сессии в микросекундах.
При установке этого значения нужно быть осторожным. Допустимы
целочисленные значения. Если установлено значене 0
, то будет использовано
значение по умолчанию. Отрицательные значения уменьшают
блокировку попытки блокировки.
По умолчанию — 150000
.
-
memcached.sess_prefix
string
-
Префикс ключа сессии. Строка длиной не более 219 байтов. По умолчанию — memc.sess.key
.
-
memcached.sess_number_of_replicas
int
-
Записывать данные на ряд дополнительных серверов memcached. Это «высокая доступность для бедняков», как её называет модуль libmemcached.
Если это значение положительное и активирован режим sessions_remove_failed_servers
,
когда сервер memcached выходит из строя, сессия будет по-прежнему доступна из реплики.
Однако, если отказавший сервер memcache снова становится доступным,
он будет читать сессию оттуда, которая может иметь старые данные или вообще не иметь данных.
По умолчанию — 0
.
-
memcached.sess_randomize_replica_read
bool
-
Случайное чтение реплики memcached сессией.
-
memcached.sess_remove_failed
int
-
Разрешить автоматическое удаление недоступных серверов memcached.
-
memcached.compression_type
string
-
Настройка типа сжатия, корректные значения: fastlz
,
zlib
. По умолчанию — fastlz
.
-
memcached.compression_factor
float
-
Коэффициент сжатия. Хранить значения сжатыми только если коэффициент
сжатия превышает заданный. Храним сжатым, если:
plain_len > comp_len * factor
.
По умолчанию — 1.3
(экономия места 23 %).
-
memcached.compression_threshold
int
-
Порог сжатия. Не сжимать сериализованные значения меньше указанного размера.
По умолчанию 2000
байтов.
-
memcached.serializer
string
-
Устанавливает сериализатор по умолчанию для новых объектов memcached. Допустимые значения:
php
, igbinary
, json
, json_array
, msgpack
.
- json
-
Стандартное для PHP кодирование в формат JSON. Этот сериализатор быстрый и компактный, но
работает только с данными в кодировке UTF-8, и не полностью реализует сериализацию.
Подробнее об этом рассказано в описании модуля JSON. Доступно с memcached 0.2.0.
- json_array
-
Тот же json
, но декодируется в массивы. Доступно с memcached 2.0.0.
- php
-
Стандартный сериализатор PHP.
- igbinary
-
Бинарный сериализатор. Доступно с memcached 0.1.4
- msgpack
-
Межъязыковой двоичный сериализатор. Доступно с memcached 2.2.0.
По умолчанию igbinary
, если доступен, затем igbinary
, если доступен, иначе PHP.
-
memcached.use_sasl
bool
-
Использовать аутентификацию SASL при соединении. Допустимые значения:
On
, Off
.
По умолчанию — Off
.
-
memcached.default_binary_protocol
bool
-
Устанавливает протокол memcached по умолчанию для новых подключений. (Чтобы настроить протокол memcached для соединений,
используемых сессиями, вместо нее используют директиву memcached.sess_binary_protocol
.)
Если установлено значение On
, по умолчанию будет использован двоичный протокол memcached.
Если установлено значение Off
, будет использован текстовый протокол memcached.
По умолчанию — Off
.
-
memcached.default_connect_timeout
int
-
Устанавливает время ожидания соединения memcached по умолчанию для новых соединений.
(Чтобы настроить время ожидания соединения memcached для сессий,
вместо этого используют memcached.sess_connect_timeout
.)
В неблокирующем режиме это изменяет значение времени ожидания во время подключения к сокету в миллисекундах.
Указание -1
означает бесконечное время ожидания.
Указание 0
означает использование времени ожидания соединения
по умолчанию для библиотеки memcached. По умолчанию — 0
.
-
memcached.default_consistent_hash
bool
-
Устанавливает значение по умолчанию для согласованного хеширования для новых подключений.
(Чтобы настроить согласованное хеширование для сессий,
вместо этого используют memcached.sess_consistent_hash
.)
Если установлено значение On
, для обработки сессии используется
согласованное хеширование (libketama). Когда используется согласованное хеширование,
можно добавлять или удалять узлы кеша, не беспокоясь о том, что существующие ключи по умолчанию отключены.
-
memcached.sess_binary_protocol
bool
-
Использовать двоичный протокол memcached для сессий memcached (вместо текстового протокола).
Реплики модуля libmemcached работают,
только если включён двоичный режим. Однако некоторые прокси (например, twemproxy) будут работать,
только если двоичный протокол отключён.
По умолчанию — On
с libmemcached 1.0.18 или новее.
До libmemcached 1.0.18 значение по умолчанию Off
.
Замечание:
В более старых версиях php-memcached эта директива была выключена и называлась
memcached.sess_binary
.
-
memcached.sess_connect_timeout
int
-
Значение времени ожидания соединения memcached.
В неблокирующем режиме это изменяет значение времени ожидания
во время соединения сокета в миллисекундах.
Указание -1
означает бесконечное время ожидания.
-
memcached.sess_consistent_hash_type
string
-
Тип согласованного хеширования сессии Memcached. Если установлено значение
ketama
(по умолчанию для php-memcached 3.x), для обработки сессии
используется согласованное хеширование модуля libketama, если установлено значение
ketama_weighted
(по умолчанию для php-memcached 2.x),
для обработки сессии используется взвешенное согласованное хеширование
(модуль libketama). По умолчанию — ketama
.
-
memcached.sess_lock_expire
int
-
Время в секундах до того, как должна сработать блокировка.
Установка значения 0
приводит к поведению по умолчанию —
будет использована PHP-директива max_execution_time
.
По умолчанию — 0
.
-
memcached.sess_lock_retries
int
-
Количество попыток повторной блокировки блокировки сессии,
не включая первую попытку. По умолчанию — 5
.
-
memcached.sess_lock_wait_max
int
-
Максимальное время ожидания в миллисекундах между попытками блокировки сессии.
По умолчанию — 150
.
-
memcached.sess_lock_wait_min
int
-
Минимальное время ожидания в миллисекундах между попытками блокировки сессии.
Это значение удваивается при каждой попытке блокировки до тех пор, пока не будет
достигнуто значение, заданное директивой memcached.sess_lock_wait_max
,
очередные попытки будут занимать время достигнутого значения.
По умолчанию — 150
.
-
memcached.sess_persistent
bool
-
Следует ли повторно использовать соединения memcached,
соответствующие значению (значениям) директивы session.save_path
после завершения выполнения скрипта. Эту директиву не используют,
если определённые настройки (например, настройки SASL, sess_binary_protocol)
будут переопределены между запросами. По умолчанию — Off
.
-
memcached.sess_remove_failed_servers
bool
-
Разрешить автоматическое удаление отказавшего сервера memcached.
По умолчанию — Off
.
Замечание:
В предыдущих версиях эта директива называлась memcached.sess_remove_failed
.
-
memcached.sess_server_failure_limit
int
-
Установка большего, чем установленное по умолчанию,
значения разрешит удаление сервера после
заданного количества непрерывных сбоев подключения.
По умолчанию — 0
.
-
memcached.sess_sasl_password
string
-
Пароль сессии SASL.
Для включения SASL необходимо указать имя пользователя и пароль.
-
memcached.sess_sasl_username
string
-
Имя пользователя сессии SASL.
Для включения SASL необходимо указать имя пользователя и пароль.
-
memcached.store_retry_count
int
-
Количество повторных попыток для неудачных команд сохранения.
Этот механизм прозрачно переключает на вторичные серверы
при сбое операций set/increment/decrement/setMulti
на желаемом сервере в среде c множеством серверов.
По умолчанию — 2
.