Spec-Zone.ru › CakePHP 2.9

Класс MemcachedEngine

Двигатель кеширования Memcached для хранения данных. Memcached имеет некоторые ограничения на контроль сроков истечения действия далеко в будущем. Подробнее см. MemcachedEngine::write().

Главным преимуществом этого движка Memcached по сравнению с движком memcached является поддержка бинарного протокола и сериализации igbinary (если расширение memcached скомпилировано с --enable-igbinary). Сжатые ключи также можно увеличивать/уменьшать.

Этот движок кеширования требует как минимум ext/memcached версии 2.0

CacheEngine
Extended by MemcachedEngine
Пакет: Cake\Cache\Engine
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT License
Расположение: Cake/Cache/Engine/MemcachedEngine.php

Краткое описание свойств

  • $_Memcached protected
    Memcache
    Обертка memcached.
  • $_serializers protected
    array
    Список доступных двигателей сериализации
  • $settings public
    array
    Настройки

Унаследованные свойства

  • _groupPrefix

Краткое описание методов

  • _parseServerString() protected

    Парсит строку адреса сервера на хост/порт. Обрабатывает как IPv6, так и IPv4 адреса и сокеты Unix

  • _setOptions() protected
    Установка экземпляра memcached
  • add() public

    Записывает данные для ключа в кеш, если они ещё не существуют. При использовании memcached как движка кеширования, помните, что расширение Memcached pecl не поддерживает сроки истечения кеша более 30 дней в будущем. Любой срок больше 30 дней будет обрабатываться как неистекающий. Если ключ уже существует, возвращает false.

  • clear() public
    Удаляет все ключи из кеша
  • clearGroup() public

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

  • decrement() public
    Уменьшает значение целочисленного ключа кеша
  • delete() public
    Удаляет ключ из кеша
  • groups() public

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

  • increment() public
    Увеличивает значение целочисленного ключа кеша
  • init() public
    Инициализирует движок кеширования
  • read() public
    Читает ключ из кеша
  • write() public

    Записывает данные для ключа в кеш. При использовании memcached как движка кеширования, помните, что расширение Memcached PECL не поддерживает сроки истечения кеша более 30 дней в будущем. Любой срок больше 30 дней будет обрабатываться как неистекающий.

Подробное описание методов

_parseServerString()source protected

_parseServerString( string $server )

Парсит строку адреса сервера на хост/порт. Обрабатывает как IPv6, так и IPv4 адреса и сокеты Unix

Параметры

строка $server
Строка адреса сервера.

Возвращает

массив
Массив, содержащий хост и порт

_setOptions()source protected

_setOptions( )

Установка экземпляра memcached

Выбрасывает

CacheException
если расширение Memcached не скомпилировано с нужным движком сериализации

add()source public

add( string $key , mixed $value , integer $duration )

Записывает данные для ключа в кеш, если они ещё не существуют. При использовании memcached как движка кеширования, помните, что расширение Memcached pecl не поддерживает сроки истечения кеша более 30 дней в будущем. Любой срок больше 30 дней будет обрабатываться как неистекающий. Если ключ уже существует, возвращает false.

Параметры

строка $key
Идентификатор данных.
смешанное $value
Данные, которые нужно поместить в кеш.
целое число $duration
Время хранения данных в секундах.

Возвращает

логическое значение
True, если данные успешно помещены в кеш, false при ошибке.

Ссылка

http://php.net/manual/en/memcached.add.php

Переопределяет

CacheEngine::add()

clear()source public

clear( boolean $check )

Удаляет все ключи из кеша

Параметры

логическое значение $check

Если true, удалений не произойдёт, и CakePHP будет полагаться на значения TTL ключей.

Возвращает

логическое значение

True, если кеш успешно очищен, иначе false. Также вернет false, если используется бинарный протокол.


clearGroup()source public

clearGroup( string $group )

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

Параметры

строка $group
Группа для очистки.

Возвращает

логическое значение
успех

Переопределяет

CacheEngine::clearGroup()

decrement()source public

decrement( string $key , integer $offset 1 )

Уменьшает значение целочисленного ключа кеша

Параметры

строка $key
Идентификатор данных
целое число $offset необязательно 1
На сколько уменьшить

Возвращает

Новое
уменьшенное значение, иначе false

Выбрасывает

CacheException
при попытке уменьшения с compress = true

delete()source public

delete( string $key )

Удаляет ключ из кеша

Параметры

строка $key
Идентификатор данных

Возвращает

логическое значение
True, если значение было успешно удалено, false, если его не существовало или не удалось удалить

groups()source public

groups( )

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

Возвращает

массив

Переопределяет

CacheEngine::groups()

increment()source public

increment( string $key , integer $offset 1 )

Увеличивает значение целочисленного ключа кеша

Параметры

строка $key
Идентификатор данных
целое число $offset необязательно 1
На сколько увеличить

Возвращает

Новое
увеличенное значение, иначе false

Выбрасывает

CacheException
при попытке увеличения с compress = true
END_OF_DOCUMENT_MARKER

init()source public

init( array $settings array() )

Инициализация кэша.

Вызывается автоматически кэшем-фронтом. Для повторной инициализации настроек вызовите Cache::engine('Имя_движка', [опциональные] настройки = массив());

Параметры

массив $settings опционально массив()
массив настроек для движка

Возвращает

boolean
True, если движок успешно инициализирован, false в противном случае

Выбрасывает

CacheException
при попытке использовать аутентификацию без поддержки SASL в Memcached

Переопределяет

CacheEngine::init()

read()source public

read( string $key )

Чтение ключа из кэша.

Параметры

строка $key
Идентификатор данных

Возвращает

mixed
Данные из кэша или false, если данных нет, истек срок действия или произошла ошибка при извлечении

write()source public

write( string $key , mixed $value , integer $duration )

Запись данных для ключа в кэш. При использовании Memcached в качестве движка кэша помните, что расширение Memcached PECL не поддерживает срок действия кэша более 30 дней в будущем. Любой срок действия более 30 дней будет рассматриваться как без срока действия.

Параметры

строка $key
Идентификатор данных
смешанный $value
Данные для кэширования
целое число $duration
Срок хранения данных в секундах

Возвращает

boolean
True, если данные были успешно кэшированы, false при ошибке

См. также

http://php.net/manual/en/memcache.set.php

Методы, унаследованные от CacheEngine

gc()source public

gc( integer $expires null )

Сбор мусора

Постоянное удаление всех просроченных и удаленных данных

Параметры

целое число $expires опционально null
[опционально] Отметка времени истечения, аннулирующая все данные до неё.

key()source public

key( string $key )

Генерирует безопасный ключ для использования с движками кэша.

Параметры

строка $key
переданный ключ

Возвращает

mixed
строка $key или false

settings()source public

settings( )

Настройки движка кэша

Возвращает

массив
настройки

Подробное описание свойств

$_Memcachedsource

protected Memcache

Обёртка memcached.

null

$_serializerssource

protected массив

Список доступных движков сериализации

Memcached должен быть скомпилирован с поддержкой json и igbinary для использования этих движков

array(
    'igbinary' => Memcached::SERIALIZER_IGBINARY,
    'json' => Memcached::SERIALIZER_JSON,
    'php' => Memcached::SERIALIZER_PHP
)

$settingssource

public массив

Настройки

  • servers = строка или массив серверов memcached, по умолчанию => 127.0.0.1. Если массив, MemcacheEngine будет использовать их как пул.
    • compress = boolean, по умолчанию => false
    • persistent = строка Имя персистентного соединения. Все конфигурации, использующие то же значение persistent, будут использовать одно и то же подлежащее соединение.
    • serialize = строка, по умолчанию => php. Движок сериализации, используемый для сериализации данных. Доступные движки: php, igbinary и json. Помимо php, расширение memcached должно быть скомпилировано с поддержкой соответствующей сериализации.
    • options - Дополнительные параметры для клиента memcached. Должен быть массивом option => значение. Используйте константы Memcached::OPT_* в качестве ключей.
array()

© 2005–2016 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/2.9/class-MemcachedEngine.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API