Spec-Zone.ru › CakePHP 3.7

Класс MemcachedEngine

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

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

Cake\Cache\CacheEngine использует Cake\Core\InstanceConfigTrait
Extended by Cake\Cache\Engine\MemcachedEngine
Пространство имён: Cake\Cache\Engine
Расположение: Cache/Engine/MemcachedEngine.php

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

  • $_Memcached protected
    Memcached
    Обёртка для memcached.
  • $_compiledGroupNames protected
    string[]
  • $_defaultConfig protected
    array
    Значение по умолчанию для конфигурации, если не переопределено в конфигурации выполнения
  • $_serializers protected
    array
    Список доступных двигателей сериализации

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

  • _groupPrefix _config, _configInitialized

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

  • _parseServerString() protected deprecated
    Обратный совместимый псевдоним для parseServerString
  • _setOptions() protected
    Настройка экземпляра memcached
  • add() public
    Добавление ключа в кэш, если он еще не существует.
  • clear() public
    Удаление всех ключей из кэша
  • clearGroup() public

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

  • decrement() public
    Уменьшает значение целочисленного кэшированного ключа
  • delete() public
    Удаление ключа из кэша
  • deleteMany() public
    Удаление нескольких ключей из кэша одновременно
  • getOption() public
    Чтение значения параметра из соединения memcached.
  • groups() public

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

  • increment() public
    Увеличивает значение целочисленного кэшированного ключа
  • init() public
    Инициализация двигателя кэша
  • parseServerString() public

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

  • read() public
    Чтение ключа из кэша
  • readMany() public
    Чтение нескольких ключей из кэша одновременно
  • write() public

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

  • writeMany() public
    Запись нескольких элементов кэша в кэш одновременно

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

_parseServerString()source protected deprecated

_parseServerString( string $server )

Обратный совместимый псевдоним для parseServerString

Устарело

3.4.13 Будет удалено в версии 4.0.0

Параметры

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

Возвращает

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

_setOptions()source protected

_setOptions( )

Настройка экземпляра memcached

Исключения

InvalidArgumentException

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


add()source public

add( string $key , mixed $value )

Добавление ключа в кэш, если он ещё не существует.

Параметры

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

Возвращает

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

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

Cake\Cache\CacheEngine::add()

clear()source public

clear( boolean $check )

Удаление всех ключей из кэша

Параметры

boolean $check
Если true, проверит срок истечения, иначе удалит все.

Возвращает

boolean
True, если кэш успешно очищен, false в противном случае

clearGroup()source public

clearGroup( string $group )

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

Параметры

строка $group
Имя группы для очистки

Возвращает

boolean
успех

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

Cake\Cache\CacheEngine::clearGroup()

decrement()source public

decrement( string $key , integer $offset = 1 )

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

Параметры

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

Возвращает

boolean|целое число
Новое уменьшенное значение, false в противном случае

delete()source public

delete( string $key )

Удаление ключа из кэша

Параметры

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

Возвращает

boolean

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


deleteMany()source public

deleteMany( array $keys )

Удаление нескольких ключей из кэша одновременно

Параметры

массив $keys
Массив идентификаторов данных

Возвращает

массив

массив булевых значений, true если ключ успешно удален, false если ключ не существовал или не удалось удалить.


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

Cake\Cache\CacheEngine::deleteMany()

getOption()source public

getOption( string $name )

Чтение значения параметра из соединения memcached.

Параметры

строка $name
Имя параметра для чтения.

Возвращает

строка|целое число|null|boolean
END_OF_DOCUMENT_MARKER

groups()source public

groups( )

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

Возвращает

array

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

Cake\Cache\CacheEngine::groups()

increment()source public

increment( string $key , integer $offset = 1 )

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

Параметры

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

Возвращает

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

init()source public

init( array $config = [] )

Инициализировать кеш-движок

Вызывается автоматически кеш-фронтом

Параметры

array $config необязательно []
массив настроек для движка

Возвращает

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

Выбрасывает

InvalidArgumentException

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


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

Cake\Cache\CacheEngine::init()

parseServerString()source public

parseServerString( string $server )

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

Параметры

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

Возвращает

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

read()source public

read( string $key )

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

Параметры

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

Возвращает

mixed

Кэшированные данные или false, если данные не существуют, истекли или произошла ошибка при получении.


readMany()source public

readMany( array $keys )

Одновременное чтение множества ключей из кэша

Параметры

array $keys
Массив идентификаторов данных

Возвращает

array

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


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

Cake\Cache\CacheEngine::readMany()

write()source public

write( string $key , mixed $value )

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

Параметры

string $key
Идентификатор данных
mixed $value
Данные, подлежащие кэшированию

Возвращает

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

См. также

https://secure.php.net/manual/en/memcache.set.php

writeMany()source public

writeMany( array $data )

Одновременная запись нескольких записей в кэш

Параметры

array $data
Массив данных, которые должны быть сохранены в кэше

Возвращает

array

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


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

Cake\Cache\CacheEngine::writeMany()

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

_key()source protected

_key( string $key )

Генерирует безопасный ключ, учитывая настроенный префикс ключа

Параметры

string $key
переданный ключ

Возвращает

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

Выбрасывает

InvalidArgumentException
Если значение ключа пустое

gc()source public

gc( integer|null $expires = null )

Сбор мусора

Постоянно удаляет все истекшие и удаленные данные

Параметры

integer|null $expires необязательно null
[необязательно] отметка времени истечения, аннулирующая все данные до нее.

key()source public

key( string $key )

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

Параметры

string $key
переданный ключ

Возвращает

boolean|string
строка ключа или false

warning()source protected

warning( string $message )

Движки кэша могут вызывать предупреждения, если они сталкиваются с ошибками во время работы, если параметр warnOnWriteFailures установлен в true.

Параметры

string $message
Сообщение предупреждения.

Методы, используемые из Cake\Core\InstanceConfigTrait

_configDelete()source protected

_configDelete( string $key )

Удаляет один ключ конфигурации.

Параметры

string $key
Ключ для удаления.

Выбрасывает

Cake\Core\Exception\Exception
если пытаетесь переписать существующую конфигурацию

_configRead()source protected

_configRead( string|null $key )

Читает ключ конфигурации.

Параметры

string|null $key
Ключ для чтения.

Возвращает

mixed

_configWrite()source protected

_configWrite( string|array $key , mixed $value , boolean|string $merge = false )

Записывает ключ конфигурации.

Параметры

string|array $key
Ключ для записи.
mixed $value
Значение для записи.
boolean|string $merge необязательно false

True для рекурсивного слияния, 'shallow' для простого слияния, false для перезаписи, по умолчанию false.

Выбрасывает

Cake\Core\Exception\Exception
если пытаетесь переписать существующую конфигурацию

config()source public deprecated

config( string|array|null $key = null , mixed|null $value = null , boolean $merge = true )

Получение/Установка конфигурации.

Использование

Чтение всей конфигурации:

$this->config();

Чтение определенного значения:

$this->config('key');

Чтение вложенного значения:

$this->config('some.nested.key');

Установка определенного значения:

$this->config('key', $value);

Установка вложенного значения:

$this->config('some.nested.key', $value);

Обновление нескольких настроек конфигурации одновременно:

$this->config(['one' => 'value', 'another' => 'value']);

Устарело

3.4.0 используйте setConfig()/getConfig() вместо этого.

Параметры

string|array|null $key необязательно null
Ключ для получения/установки или полный массив конфигураций.
mixed|null $value необязательно null
Значение для установки.
boolean $merge необязательно true
Выполнять ли рекурсивное слияние или перезапись существующей конфигурации, по умолчанию true.

Возвращает

mixed
Значение конфигурации, которое читается, или сам объект при операциях записи.

Выбрасывает

Cake\Core\Exception\Exception
При попытке установить недопустимый ключ.

configShallow()source public

configShallow( string|array $key , mixed|null $value = null )

Объединить предоставленные конфигурационные данные с существующими. В отличие от config(), которое выполняет рекурсивное объединение для вложенных ключей, этот метод выполняет простое объединение.

Установка конкретного значения:

$this->configShallow('key', $value);

Установка вложенного значения:

$this->configShallow('some.nested.key', $value);

Обновление нескольких настроек конфигурации одновременно:

$this->configShallow(['one' => 'value', 'another' => 'value']);

Параметры

string|array $key
Ключ для установки или полный массив конфигураций.
mixed|null $value необязательно null
Значение для установки.

Возвращает


$this

getConfig()source public

getConfig( string|null $key = null , mixed $default = null )

Возвращает конфигурацию.

Использование

Чтение всей конфигурации:

$this->getConfig();

Чтение конкретного значения:

$this->getConfig('key');

Чтение вложенного значения:

$this->getConfig('some.nested.key');

Чтение со значением по умолчанию:

$this->getConfig('some-key', 'default-value');

Параметры

string|null $key необязательно null
Ключ для получения или null для всей конфигурации.
mixed $default необязательно null
Значение по умолчанию, если ключ не существует.

Возвращает

mixed
Значение считанной конфигурации.

setConfig()source public

setConfig( string|array $key , mixed|null $value = null , boolean $merge = true )

Устанавливает конфигурацию.

Использование

Установка конкретного значения:

$this->setConfig('key', $value);

Установка вложенного значения:

$this->setConfig('some.nested.key', $value);

Обновление нескольких настроек конфигурации одновременно:

$this->setConfig(['one' => 'value', 'another' => 'value']);

Параметры

string|array $key
Ключ для установки или полный массив конфигураций.
mixed|null $value необязательно null
Значение для установки.
boolean $merge необязательно true
Выполнять ли рекурсивное объединение или перезаписывать существующую конфигурацию, по умолчанию true.

Возвращает


$this

Выбрасывает

Cake\Core\Exception\Exception
При попытке установить недопустимый ключ.

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

$_Memcachedsource

protected Memcached

Обёртка memcached.

$_compiledGroupNamessource

protected string[]

[]

$_defaultConfigsource

protected array

Конфигурация по умолчанию, используемая, если не переопределена в runtime

  • compress Сжимать ли данные
  • duration Указывает, как долго элементы в этой конфигурации кэша сохраняются.
  • groups Список групп или «меток», связанных с каждым ключом, хранящимся в этой конфигурации. Полезно для удаления целой группы из кэша.
  • username Логин для доступа к серверу Memcache
  • password Пароль для доступа к серверу Memcache
  • persistent Название постоянного соединения. Все конфигурации, использующие то же самое значение, будут использовать одно подлежащее соединение.
  • prefix Добавляется ко всем записям. Полезно, когда вам нужно использовать пространство имён ключей с другой конфигурацией кэша или другим приложением.
  • probability Вероятность попадания в обработчик очистки кэша. Установка значения 0 отключит автоматическое вызов cache::gc.
  • serialize Движок сериализации, используемый для сериализации данных. Доступные движки: php, igbinary и json. Помимо php, необходимо, чтобы расширение memcached было скомпилировано с соответствующей поддержкой сериализации.
  • servers Строка или массив серверов memcached. Если массив, MemcacheEngine будет использовать их в качестве пула.
  • options Дополнительные параметры для клиента memcached. Должен быть массивом опция => значение. Используйте константы \Memcached::OPT_*.
[
    'compress' => false,
    'duration' => 3600,
    'groups' => [],
    'host' => null,
    'username' => null,
    'password' => null,
    'persistent' => false,
    'port' => null,
    'prefix' => 'cake_',
    'probability' => 100,
    'serialize' => 'php',
    'servers' => ['127.0.0.1'],
    'options' => [],
]

$_serializerssource

protected array

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

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

[]

© 2005–present 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/3.7/class-Cake.Cache.Engine.MemcachedEngine.html

Spec-Zone.ru

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