Следующие константы определяются модулем и доступны, только если модуль либо собрали в PHP, либо динамически загрузили при выполнении кода.
Memcached::OPT_COMPRESSIONВключает или отключает сжатие полезных данных. При включении значения элементов, превышающие определённый порог (в настоящее время 2000 байт), будут сжиматься при хранении и декомпрессироваться при извлечении прозрачным образом. Порог можно настроить с помощью ini-параметра memcached.compression_threshold.
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Указывает уровень сжатия, который будет использоваться, если сжатие включено.
Memcached::COMPRESSION_FASTLZ не поддерживает уровни сжатия.Memcached::COMPRESSION_ZSTD: минимальный уровень -22, а максимальный уровень – 22.Memcached::COMPRESSION_ZLIB: минимальный уровень 0, а максимальный уровень – 9.Тип: 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 и т.д.) с такими же настройками сервера смогут получить прозрачный доступ к ключам.
Замечание:
Крайне рекомендуется включить эту опцию если вы хотите использовать консистентное хеширование. Кроме того, она может быть включена по умолчанию в следующих релизах.
Memcached::OPT_LIBKETAMA_HASHУказывает алгоритм хеширования для сопоставления хостов.
Тип: int.
Memcached::OPT_TCP_KEEPALIVEВключает функцию поддержания активности TCP.
Memcached::OPT_BUFFER_WRITESВключает или отключает буферизованный ввод/вывод. Включение буферизации приводит к буферизации команд хранилищу вместо моментальной отправки. Любое действие по извлечению данных приведёт к немедленной отправке буфера на удалённый сервер. Выход или закрытие соединения также приводит к немедленной отправке буфера.
Memcached::OPT_BINARY_PROTOCOLВключает использование бинарного протокола. Учтите, что на уже открытом соединении включить данную опцию не получится.
Memcached::OPT_NO_BLOCKВключает или отключает асинхронный ввод/вывод. Это самый быстрый транспорт для функций хранения.
Memcached::OPT_NOREPLYВключает или отключает игнорирование результата функций хранения (set, add, replace, append, prepend, delete, increment, decrement и т.д.). Функции хранения будут отправлены, не тратя время на ожидание ответа (ответа не будет). Этот параметр не влияет на команды извлечения, такие как Memcached::get().
Memcached::OPT_TCP_NODELAYВключает или отключает опцию no-delay для сокетов соединения (в некоторых случаях может дать прирост скорости).
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-запросов.
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.
Memcached::OPT_VERIFY_KEYВключает проверку ключей memcached.
Memcached::OPT_USE_UDPИспользует UDP вместо TCP.
Memcached::OPT_NUMBER_OF_REPLICASКоличество реплик каждого элемента, хранящихся на разных серверах.
Тип: int, по умолчанию: 0.
Memcached::OPT_RANDOMIZE_REPLICA_READSРандомизирует сервер чтения реплик.
Memcached::OPT_REMOVE_FAILED_SERVERS
Удаляет отключённые серверы из списка. Используется вместе с
Memcached::OPT_SERVER_FAILURE_LIMIT и
Memcached::OPT_SERVER_TIMEOUT_LIMIT.
Memcached::HAVE_IGBINARYУказывает, доступна ли поддержка сериализатора igbinary.
Тип: bool.
Memcached::HAVE_JSONУказывает, доступна ли поддержка сериализатора JSON.
Тип: bool.
Memcached::HAVE_MSGPACKУказывает, доступна ли поддержка сериализатора MessagePack.
Тип: bool.
Доступно с Memcached 3.0.0.
Memcached::HAVE_ZSTDIndicates 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.