Spec-Zone.ru › CakePHP 3.6

Класс 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
Данные, которые нужно кэшировать.

Возвращает

булево
Истина, если данные были успешно кэшированы, ложь в случае неудачи.

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

Cake\Cache\CacheEngine::add()

clear()source public

clear( boolean $check )

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

Параметры

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

Возвращает

булево
Истина, если кэш был успешно очищен, ложь в противном случае

clearGroup()source public

clearGroup( string $group )

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

Параметры

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

Возвращает

булево
успех

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

Cake\Cache\CacheEngine::clearGroup()

decrement()source public

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

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

Параметры

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

Возвращает

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

delete()source public

delete( string $key )

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

Параметры

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

Возвращает

булево

Истина, если значение было успешно удалено, ложь, если его не существовало или не удалялось.


deleteMany()source public

deleteMany( array $keys )

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

Параметры

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

Возвращает

массив

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


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

Cake\Cache\CacheEngine::deleteMany()

getOption()source public

getOption( string $name )

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

Параметры

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

Возвращает

строка|целое|null|булево

groups()source public

groups( )

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

Возвращает

array

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

Cake\Cache\CacheEngine::groups()

increment()source public

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

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

Параметры

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

Возвращает

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

init()source public

init( array $config = [] )

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

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

Параметры

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

Возвращает

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

Исключения

InvalidArgumentException

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


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

Cake\Cache\CacheEngine::init()

parseServerString()source public

parseServerString( string $server )

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

Параметры

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

Возвращает

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

read()source public

read( string $key )

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

Параметры

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

Возвращает

mixed

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


readMany()source public

readMany( array $keys )

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

Параметры

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

Возвращает

array

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


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

Cake\Cache\CacheEngine::readMany()

write()source public

write( string $key , mixed $value )

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

Параметры

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

Возвращает

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

См.

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

writeMany()source public

writeMany( array $data )

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

Параметры

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

Возвращает

array

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


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

Cake\Cache\CacheEngine::writeMany()

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

_key()source protected

_key( string $key )

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

Параметры

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

Возвращает

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

Исключения

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

gc()source public

gc( integer|null $expires = null )

Сбор мусора

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

Параметры

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

key()source public

key( string $key )

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

Параметры

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

Возвращает

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

warning()source protected

warning( string $message )

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

Параметры

строка $message
Сообщение предупреждения.

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

_configDelete()source protected

_configDelete( string $key )

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

Параметры

строка $key
Ключ для удаления.

Исключения

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

_configRead()source protected

_configRead( string|null $key )

Считывает значение конфигурации.

Параметры

строка|null $key
Ключ для чтения.

Возвращает

mixed

_configWrite()source protected

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

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

Параметры

строка|массив $key
Ключ, в который записывать.
смешанное $value
Значение для записи.
boolean|строка $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() вместо.

Параметры

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

Возвращает

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

Исключения

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

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

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

  • compress Сжимать ли данные
  • duration Укажите, как долго элементы в этой конфигурации кэша хранятся.
  • groups Список групп или «метки», связанных с каждым ключом, хранящимся в этой конфигурации. Удобно для удаления целой группы из кэша.
  • username Логин для доступа к серверу Memcache
  • password Пароль для доступа к серверу Memcache
  • persistent Имя постоянного подключения. Все конфигурации, использующие то же значение persistence, будут совместно использовать одно базовое подключение.
  • prefix Префикс для всех записей. Хорошо подходит, когда вам нужно использовать пространство имен ключей с другой конфигурацией кэша или другим приложением.
  • probability Вероятность запуска очистки кэша gc. Установка в 0 отключит автоматическое вызов cache::gc.
  • serialize Двигатель сериализации, используемый для сериализации данных. Доступные движки — php, igbinary и json. Помимо php, расширение memcached должно быть скомпилировано с соответствующей поддержкой сериализации.
  • servers Строка или массив серверов memcached. Если массив, MemcacheEngine будет использовать их как пул.
  • options Дополнительные параметры для клиента memcached. Должен быть массивом option => value. Используйте константы \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.6/class-Cake.Cache.Engine.MemcachedEngine.html

Spec-Zone.ru

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