Предопределённые константы

Следующие константы определяются модулем и доступны, только если модуль либо собрали в PHP, либо динамически загрузили при выполнении кода.

Memcached::OPT_COMPRESSION
Включает или отключает сжатие полезных данных. При включении значения элементов, превышающие определённый порог (в настоящее время 2000 байт), будут сжиматься при хранении и декомпрессироваться при извлечении прозрачным образом. Порог можно настроить с помощью ini-параметра memcached.compression_threshold.

Тип: bool, по умолчанию: true.

Memcached::OPT_COMPRESSION_TYPE
Указывает алгоритм сжатия, который будет использоваться, если сжатие включено. Допустимые алгоритмы: Memcached::COMPRESSION_FASTLZ, Memcached::COMPRESSION_ZLIB и Memcached::COMPRESSION_ZSTD.

Тип: int, по умолчанию: Memcached::COMPRESSION_FASTLZ.

Memcached::COMPRESSION_FASTLZ
Алгоритм сжатия FASTLZ.
Memcached::COMPRESSION_ZLIB
Алгоритм сжатия ZLIB.
Memcached::COMPRESSION_ZSTD
Алгоритм сжатия ZSTD. Доступно с Memcached 3.3.0.
Memcached::OPT_COMPRESSION_LEVEL
Указывает уровень сжатия, который будет использоваться, если сжатие включено.

Тип: int, по умолчанию: 3.

Memcached::OPT_SERIALIZER
Указывает сериализатор, который будет использоваться для сериализации нескалярных значений. Допустимые сериализаторы: Memcached::SERIALIZER_PHP, Memcached::SERIALIZER_IGBINARY, Memcached::SERIALIZER_JSON, Memcached::SERIALIZER_JSON_ARRAY и Memcached::SERIALIZER_MSGPACK.

Тип: int, по умолчанию: Memcached::SERIALIZER_IGBINARY если доступно, затем Memcached::SERIALIZER_MSGPACK если доступно, затем Memcached::SERIALIZER_PHP.

Memcached::SERIALIZER_PHP

Сериализатор PHP по умолчанию.

Memcached::SERIALIZER_IGBINARY
Сериализатор igbinary. Вместо текстового представления он хранит структуры данных PHP в компактной двоичной форме, что позволяет сэкономить место и время. Сериализатор поддерживается только в том случае, если memcached настроен с помощью опции --enable-memcached-igbinary и загружен модуль igbinary.
Memcached::SERIALIZER_JSON

Сериализатор JSON. Сериализатор десериализует JSON в объект.

Memcached::SERIALIZER_JSON_ARRAY
Сериализатор массива JSON. Сериализатор десериализует JSON в ассоциативный массив.
Memcached::SERIALIZER_MSGPACK
Сериализатор » MessagePack. Сериализатор поддерживается только в том случае, если memcached настроен с помощью опции --enable-memcached-msgpack и загружен модуль msgpack.
Memcached::OPT_PREFIX_KEY
Используется для создания "домена" для ваших ключей. Заданное здесь значение будет использоваться в качестве префикса для всех ключей. Значение не может быть длиннее 128 символов и, соответственно, максимальная длина ключей будет уменьшена. Префикс применяется только для обычных ключей, но не для серверных ключей.

Тип: string, по умолчанию: "".

Memcached::OPT_HASH
Задаёт алгоритм хеширования для ключей. Можно задавать константами Memcached::HASH_*. Каждый алгоритм хеширования имеет свои достоинства и недостатки. Используйте значение по умолчанию, если не уверены или вам всё равно.

Тип: int, по умолчанию: Memcached::HASH_DEFAULT

Memcached::HASH_DEFAULT

Алгоритм хеширования ключей по умолчанию (Jenkins one-at-a-time).

Memcached::HASH_MD5

Алгоритм хеширования ключей MD5.

Memcached::HASH_CRC

Алгоритм хеширования ключей CRC.

Memcached::HASH_FNV1_64

Алгоритм хеширования ключей FNV1_64.

Memcached::HASH_FNV1A_64

Алгоритм хеширования ключей FNV1_64A.

Memcached::HASH_FNV1_32

Алгоритм хеширования ключей FNV1_32.

Memcached::HASH_FNV1A_32

Алгоритм хеширования ключей FNV1_32A.

Memcached::HASH_HSIEH

Алгоритм хеширования ключей Hsieh.

Memcached::HASH_MURMUR

Алгоритм хеширования ключей Murmur.

Memcached::OPT_DISTRIBUTION
Задаёт способ распределения ключей по серверам. В данный момент поддерживаются методы модульного и консистентного хеширования. Консистентное хеширование даёт лучшее распределение и позволяет добавлять сервера в кластер с минимальными потерями кеша.

Тип: int, по умолчанию: Memcached::DISTRIBUTION_MODULA.

Memcached::DISTRIBUTION_MODULA

Модульный алгоритм распределения ключей.

Memcached::DISTRIBUTION_CONSISTENT

Алгоритм распределения ключей "Консистентное хеширование" (базируется на libketama).

Memcached::DISTRIBUTION_VIRTUAL_BUCKET
Алгоритм распределения хеш-ключей Virtual Bucket (также называемый vbucket).
Memcached::OPT_LIBKETAMA_COMPATIBLE

Включает или отключает совместимость с поведением типа libketama. Если включено, то алгоритм хеширования ключей устанавливается в MD5 и распределение ключей в режим консистентного хеширования на базе весов. Это полезно потому, что другие клиенты с поведением типа libketama (Python, Ruby и т.д.) с такими же настройками сервера смогут получить прозрачный доступ к ключам.

Замечание:

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

Тип: bool, по умолчанию: false.

Memcached::OPT_LIBKETAMA_HASH
Указывает алгоритм хеширования для сопоставления хостов.

Тип: int.

Memcached::OPT_TCP_KEEPALIVE
Включает функцию поддержания активности TCP.

Тип: bool, по умолчанию: false.

Memcached::OPT_BUFFER_WRITES
Включает или отключает буферизованный ввод/вывод. Включение буферизации приводит к буферизации команд хранилищу вместо моментальной отправки. Любое действие по извлечению данных приведёт к немедленной отправке буфера на удалённый сервер. Выход или закрытие соединения также приводит к немедленной отправке буфера.

Тип: bool, по умолчанию: false.

Memcached::OPT_BINARY_PROTOCOL
Включает использование бинарного протокола. Учтите, что на уже открытом соединении включить данную опцию не получится.

Тип: bool, по умолчанию: false.

Memcached::OPT_NO_BLOCK
Включает или отключает асинхронный ввод/вывод. Это самый быстрый транспорт для функций хранения.

Тип: bool, по умолчанию: false.

Memcached::OPT_NOREPLY
Включает или отключает игнорирование результата функций хранения (set, add, replace, append, prepend, delete, increment, decrement и т.д.). Функции хранения будут отправлены, не тратя время на ожидание ответа (ответа не будет). Этот параметр не влияет на команды извлечения, такие как Memcached::get().

Тип: bool, по умолчанию: false.

Memcached::OPT_TCP_NODELAY
Включает или отключает опцию no-delay для сокетов соединения (в некоторых случаях может дать прирост скорости).

Тип: bool, по умолчанию: false.

Memcached::OPT_SOCKET_SEND_SIZE
Максимальный размер буфера отправки для сокета в байтах.

Тип: int, по умолчанию: зависит от настроек платформы/ядра.

Memcached::OPT_SOCKET_RECV_SIZE
Максимальный размер буфера приёма для сокета в байтах.

Тип: int, по умолчанию: зависит от настроек платформы/ядра.

Memcached::OPT_CONNECT_TIMEOUT
В неблокирующем режиме задаёт время ожидания соединения для сокета в миллисекундах.

Тип: int, по умолчанию: 1000.

Memcached::OPT_RETRY_TIMEOUT
Время в секундах, в течение которого следует ждать перед повторной попыткой установления соединения.

Тип: int, по умолчанию: 2.

Memcached::OPT_DEAD_TIMEOUT
Время в секундах, в течение которого следует ждать перед повторной попыткой подключения к неработающим серверам. 0 означает, что повторная попытка не будет выполняться.

Тип: int, по умолчанию: 0.

Memcached::OPT_SEND_TIMEOUT
Время ожидания отправки для сокета в микросекундах. В случаях, когда вы не можете использовать неблокирующий ввод/вывод это поможет вам сохранить время ожидания при отсылке данных.

Тип: int, по умолчанию: 0.

Memcached::OPT_RECV_TIMEOUT
Время ожидания чтения для сокета в микросекундах. В случаях, когда вы не можете использовать неблокирующий ввод/вывод это поможет вам сохранить время ожидания при чтении данных.

Тип: int, по умолчанию: 0.

Memcached::OPT_POLL_TIMEOUT
Время ожидания опроса соединения, в миллисекундах.

Тип: int, по умолчанию: 1000.

Memcached::OPT_CACHE_LOOKUPS
Включает или отключает кеширование DNS-запросов.

Тип: bool, по умолчанию: false.

Memcached::OPT_SERVER_FAILURE_LIMIT
Указывает предел неудачных попыток подключения к серверу. Сервер будет удалён после такого количества непрерывных неудачных попыток подключения.

Тип: int, по умолчанию: 5.

Memcached::OPT_SERVER_TIMEOUT_LIMIT
Указывает предельное время ожидания попыток подключения к серверу. Сервер будет удалён после стольких последовательных таймаутов подключения.

Тип: int, по умолчанию: 0.

Memcached::OPT_AUTO_EJECT_HOSTS

Удаляет отключённые серверы из списка. Используется вместе с Memcached::OPT_SERVER_FAILURE_LIMIT и Memcached::OPT_SERVER_TIMEOUT_LIMIT.

Замечание:

Опция заменена на Memcached::OPT_REMOVE_FAILED_SERVERS.

Тип: bool, по умолчанию: false.

Memcached::OPT_VERIFY_KEY
Включает проверку ключей memcached.

Тип: bool, по умолчанию: false.

Memcached::OPT_USE_UDP
Использует UDP вместо TCP.

Тип: bool, по умолчанию: false.

Memcached::OPT_NUMBER_OF_REPLICAS
Количество реплик каждого элемента, хранящихся на разных серверах.

Тип: int, по умолчанию: 0.

Memcached::OPT_RANDOMIZE_REPLICA_READS
Рандомизирует сервер чтения реплик.

Тип: bool, по умолчанию: false.

Memcached::OPT_REMOVE_FAILED_SERVERS
Удаляет отключённые серверы из списка. Используется вместе с Memcached::OPT_SERVER_FAILURE_LIMIT и Memcached::OPT_SERVER_TIMEOUT_LIMIT.

Тип: bool, по умолчанию: false.

Memcached::HAVE_IGBINARY
Указывает, доступна ли поддержка сериализатора igbinary.

Тип: bool.

Memcached::HAVE_JSON
Указывает, доступна ли поддержка сериализатора JSON.

Тип: bool.

Memcached::HAVE_MSGPACK
Указывает, доступна ли поддержка сериализатора MessagePack.

Тип: bool.

Доступно с Memcached 3.0.0.

Memcached::HAVE_ZSTD
Indicates whether ZSTD compression support is available.

Type: bool.

Доступно с Memcached 3.3.0.

Memcached::HAVE_ENCODING
Указывает, поддерживается ли шифрование данных с помощью Memcached::setEncodingKey().

Тип: bool.

Доступно с Memcached 3.1.0.

Memcached::HAVE_SESSION

Тип: bool.

Доступно с Memcached 3.0.0.

Memcached::HAVE_SASL

Тип: bool.

Доступно с Memcached 3.0.0.

Memcached::GET_EXTENDED

Флаг для Memcached::get(), Memcached::getMulti() и Memcached::getMultiByKey() дл того, чтобы также возвращались значения токена CAS.

Доступно с Memcached 3.0.0.

Memcached::GET_PRESERVE_ORDER

Флаг для Memcached::getMulti() и Memcached::getMultiByKey() для гарантированного возвращения ключей в том же порядке, как они были запрошены. Несуществующие ключи будут возвращены со значениями null.

Memcached::RES_SUCCESS

Операция прошла успешно.

Memcached::RES_FAILURE

Операция завершилась ошибкой.

Memcached::RES_HOST_LOOKUP_FAILURE

Ошибка запроса к DNS.

Memcached::RES_UNKNOWN_READ_FAILURE

Не удалось прочитать сетевые данные.

Memcached::RES_PROTOCOL_ERROR

Некорректная команда в протоколе memcached.

Memcached::RES_CLIENT_ERROR

Ошибка на стороне клиента.

Memcached::RES_SERVER_ERROR

Ошибка на стороне сервера.

Memcached::RES_WRITE_FAILURE

Не удалось записать сетевые данные.

Memcached::RES_DATA_EXISTS

Не удалось сравнить-и-обменять: вы пытаетесь изменить элемент, который был изменён после того, как вы его прочитали в последний раз.

Memcached::RES_NOTSTORED

Элемент не сохранён: но не из-за ошибки. Обычно такое означает, что не соблюдены предусловия команд "add" или "replace" либо что элемент находится в очереди на удаление.

Memcached::RES_NOTFOUND

Элемент с заданным ключом не найден (при операциях "get" или "cas").

Memcached::RES_PARTIAL_READ

Частичная ошибка чтения сетевых данных.

Memcached::RES_SOME_ERRORS

Какие-то ошибки возникли при мульти-запросе.

Memcached::RES_NO_SERVERS

Список серверов пуст.

Memcached::RES_END

Конец результирующего набора.

Memcached::RES_ERRNO

Системная ошибка.

Memcached::RES_BUFFERED

Операция помещена в буфер.

Memcached::RES_TIMEOUT

Превышено время ожидания операции.

Memcached::RES_BAD_KEY_PROVIDED

Некорректный ключ.

Memcached::RES_STORED
Элемент сохранён.
Memcached::RES_DELETED
Элемент удалён.
Memcached::RES_STAT
Статистика.
Memcached::RES_ITEM
Элемент.
Memcached::RES_NOT_SUPPORTED
Не поддерживается.
Memcached::RES_FETCH_NOTFINISHED
Загрузка не завершена.
Memcached::RES_SERVER_MARKED_DEAD
Сервер помечен как неработающий.
Memcached::RES_UNKNOWN_STAT_KEY
Неизвестный ключ статистики.
Memcached::RES_INVALID_HOST_PROTOCOL
Недопустимый протокол хоста.
Memcached::RES_MEMORY_ALLOCATION_FAILURE
Ошибка выделения памяти.
Memcached::RES_CONNECTION_SOCKET_CREATE_FAILURE

Не удалось создать сетевой сокет.

Memcached::RES_PAYLOAD_FAILURE

Проблемы с данными: не удаётся сжать/разжать или сериализовать/десериализовать значение.

Memcached::RES_AUTH_PROBLEM

Доступно с Memcached 3.0.0.

Memcached::RES_AUTH_FAILURE

Доступно с Memcached 3.0.0.

Memcached::RES_AUTH_CONTINUE

Доступно с Memcached 3.0.0.

Memcached::RES_E2BIG

Доступно с Memcached 3.0.0.

Memcached::RES_KEY_TOO_BIG

Доступно с Memcached 3.0.0.

Memcached::RES_SERVER_TEMPORARILY_DISABLED

Доступно с Memcached 3.0.0.

Memcached::RES_SERVER_MEMORY_ALLOCATION_FAILURE

Доступно с Memcached 3.0.0.