Класс yii\mongodb\Cache
| Наследование | yii\mongodb\Cache » yii\caching\Cache » yii\base\Component » yii\base\Object |
|---|---|
| Реализует | yii\base\Configurable, yii\caching\CacheInterface |
| Доступна с версии | 2.0 |
| Исходный код | https://github.com/yiisoft/yii2-mongodb/blob/master/Cache.php |
Cache реализует компонент кэширования, храня данные в MongoDB.
По умолчанию, Cache хранит данные сессии в коллекции MongoDB под именем 'cache' в базе данных по умолчанию. Эту коллекцию лучше предварительно создать с полями 'id' и 'expire', индексированными. Имя коллекции можно изменить, задав $cacheCollection.
Для получения информации о стандартных операциях кэширования, поддерживаемых Cache, обратитесь к yii\caching\Cache.
Следующий пример показывает, как настроить приложение для использования Cache:
'cache' => [
'class' => 'yii\mongodb\Cache',
// 'db' => 'mymongodb',
// 'cacheCollection' => 'my_cache',
]
Публичные свойства
| Свойство | Тип | Описание | Определено в |
|---|---|---|---|
| $behaviors | yii\base\Behavior[] | Список присоединённых к этому компоненту поведений | yii\base\Component |
| $cacheCollection | string|array | Имя коллекции MongoDB, хранящей данные кэша. | yii\mongodb\Cache |
| $db | yii\mongodb\Connection|array|string | Объект подключения к MongoDB или идентификатор компонента приложения для подключения к MongoDB. | yii\mongodb\Cache |
| $defaultDuration | integer | Значение по умолчанию для времени жизни кэшированной записи в секундах. | yii\caching\Cache |
| $gcProbability | integer | Вероятность (десятитысячные) выполнения сбора мусора (GC) при сохранении данных в кэше. | yii\mongodb\Cache |
| $keyPrefix | string | Строка-префикс для каждого ключа кэша, делающая его уникальным во всем хранилище кэша. | yii\caching\Cache |
| $serializer | null|array|false | Функции для сериализации и десериализации данных кэша. | yii\caching\Cache |
Публичные методы
| Метод | Описание | Определено в |
|---|---|---|
| __call() | Вызывает именованный метод, который не является методом класса. | yii\base\Object |
| __clone() | Этот метод вызывается после создания объекта путём клонирования существующего. | yii\base\Component |
| __construct() | Конструктор. | yii\base\Object |
| __get() | Возвращает значение свойства объекта. | yii\base\Object |
| __isset() | Проверяет, установлено ли свойство, т.е. определено и не равно null. | yii\base\Object |
| __set() | Устанавливает значение свойства объекта. | yii\base\Object |
| __unset() | Устанавливает свойство объекта в null. | yii\base\Object |
| add() | Сохраняет значение, идентифицируемое ключом, в кэш, если в кэше нет этого ключа. | yii\caching\Cache |
| attachBehavior() | Присоединяет поведение к этому компоненту. | yii\base\Component |
| attachBehaviors() | Присоединяет список поведений к компоненту. | yii\base\Component |
| behaviors() | Возвращает список поведений, в соответствии с которыми должен вести себя этот компонент. | yii\base\Component |
| buildKey() | Создаёт нормализованный ключ кэша из заданного ключа. | yii\caching\Cache |
| canGetProperty() | Возвращает значение, указывающее, можно ли прочитать свойство. | yii\base\Object |
| canSetProperty() | Возвращает значение, указывающее, можно ли установить свойство. | yii\base\Object |
| className() | Возвращает полное имя этого класса. | yii\base\Object |
| delete() | Удаляет значение с указанным ключом из кэша. | yii\caching\Cache |
| detachBehavior() | Отсоединяет поведение от компонента. | yii\base\Component |
| detachBehaviors() | Отсоединяет все поведения от компонента. | yii\base\Component |
| ensureBehaviors() | Убеждается, что поведения, объявленные в behaviors(), присоединены к этому компоненту. | yii\base\Component |
| exists() | Проверяет, существует ли указанный ключ в кэше. | yii\caching\Cache |
| flush() | Удаляет все значения из кэша. | yii\caching\Cache |
| gc() | Удаляет истекшие данные. | yii\mongodb\Cache |
| get() | Извлекает значение из кэша с указанным ключом. | yii\caching\Cache |
| getBehavior() | Возвращает объект именованного поведения. | yii\base\Component |
| getBehaviors() | Возвращает все присоединённые к этому компоненту поведения. | yii\base\Component |
| getOrSet() | Метод объединяет методы set() и get() для извлечения значения, идентифицированного ключом $key, или для сохранения результата выполнения $callable, если для $key нет кэшированного значения. | yii\caching\Cache |
| hasEventHandlers() | Возвращает значение, указывающее, есть ли обработчик, присоединённый к указанному событию. | yii\base\Component |
| hasMethod() | Возвращает значение, указывающее, определён ли метод. | yii\base\Object |
| hasProperty() | Возвращает значение, указывающее, определено ли свойство. | yii\base\Object |
| init() | Инициализирует компонент Cache. | yii\mongodb\Cache |
| madd() | Сохраняет несколько элементов в кэш. Каждый элемент содержит значение, идентифицируемое ключом. | yii\caching\Cache |
| mget() | Извлекает несколько значений из кэша по указанным ключам. | yii\caching\Cache |
| mset() | Сохраняет несколько элементов в кэш. Каждый элемент содержит значение, идентифицируемое ключом. | yii\caching\Cache |
| multiAdd() | Сохраняет несколько элементов в кэш. Каждый элемент содержит значение, идентифицируемое ключом. | yii\caching\Cache |
| multiGet() | Извлекает несколько значений из кэша по указанным ключам. | yii\caching\Cache |
| multiSet() | Сохраняет несколько элементов в кэш. Каждый элемент содержит значение, идентифицируемое ключом. | yii\caching\Cache |
| off() | Отсоединяет существующий обработчик событий от этого компонента. | yii\base\Component |
| offsetExists() | Возвращает значение, показывающее, существует ли запись в кэше с заданным ключом. | yii\caching\Cache |
| offsetGet() | Извлекает значение из кэша по указанному ключу. | yii\caching\Cache |
| offsetSet() | Сохраняет значение, идентифицируемое ключом, в кэш. | yii\caching\Cache |
| offsetUnset() | Удаляет значение с указанным ключом из кэша. Этот метод необходим для интерфейса ArrayAccess. | yii\caching\Cache |
| on() | Присоединяет обработчик событий к событию. | yii\base\Component |
| set() | Сохраняет значение, идентифицируемое ключом, в кэш. | yii\caching\Cache |
| trigger() | Вызывает событие. | yii\base\Component |
Защищённые методы
| Метод | Описание | Определено в |
|---|---|---|
| addValue() | Сохраняет значение, идентифицируемое ключом, в кэше, если этот ключ в кэше отсутствует. | yii\mongodb\Cache |
| addValues() | Добавляет несколько пар ключ-значение в кэш. | yii\caching\Cache |
| deleteValue() | Удаляет значение с указанным ключом из кэша. Этот метод должен быть реализован дочерними классами для удаления данных из фактического хранилища кэша. | yii\mongodb\Cache |
| flushValues() | Удаляет все значения из кэша. | yii\mongodb\Cache |
| getValue() | Извлекает значение из кэша по указанному ключу. | yii\mongodb\Cache |
| getValues() | Извлекает несколько значений из кэша по указанным ключам. | yii\caching\Cache |
| setValue() | Сохраняет значение, идентифицируемое ключом, в кэше. | yii\mongodb\Cache |
| setValues() | Сохраняет несколько пар ключ-значение в кэше. | yii\caching\Cache |
Подробное описание свойств
$cacheCollection общественное свойство
Имя коллекции MongoDB, хранящей данные кэша. Обратитесь к yii\mongodb\Connection::getCollection() для указания этого параметра. Эту коллекцию лучше предварительно создать с полями 'id' и 'expire' с индексами.
public string|array $cacheCollection = 'cache'
$db общественное свойство
Объект подключения к MongoDB или идентификатор компонента приложения для подключения к MongoDB. После создания объекта Cache, если вы хотите изменить это свойство, вы должны присвоить ему только объект подключения к MongoDB. Начиная с версии 2.0.2, это также может быть массив конфигурации для создания объекта.
public yii\mongodb\Connection|array|string $db = 'mongodb'
$gcProbability общественное свойство
Вероятность (частей на миллион), что будет выполнено сборка мусора (GC), при сохранении фрагмента данных в кэше. По умолчанию 100, что означает 0,01% шанс. Это число должно быть между 0 и 1000000. Значение 0 означает, что GC вообще не будет выполняться.
public integer $gcProbability = 100
Подробное описание методов
addValue() защищённый метод
Сохраняет значение, идентифицируемое ключом, в кэше, если этот ключ в кэше отсутствует.
Этот метод должен быть реализован дочерними классами для сохранения данных в конкретном хранилище кэша.
| защищённый boolean addValue ( $key, $value, $expire ) | ||
|---|---|---|
| $key | string |
Ключ, идентифицирующий значение для кэширования |
| $value | string |
Значение для кэширования |
| $expire | integer |
Количество секунд, в течение которых кэшированное значение будет действовать. 0 означает, что срок действия не ограничен. |
| return | boolean |
True, если значение успешно сохранено в кэше, иначе false |
deleteValue() защищённый метод
Удаляет значение с указанным ключом из кэша. Этот метод должен быть реализован дочерними классами для удаления данных из фактического хранилища кэша.
| защищённый boolean deleteValue ( $key ) | ||
|---|---|---|
| $key | string |
Ключ значения, которое нужно удалить |
| return | boolean |
Если удаление прошло без ошибок |
flushValues() защищённый метод
Удаляет все значения из кэша.
Дочерние классы могут реализовать этот метод для выполнения операции сброса.
| защищённый boolean flushValues ( ) | ||
|---|---|---|
| return | boolean |
Успешно ли прошла операция сброса. |
gc() общественный метод
Удаляет устаревшие данные.
| общественный void gc ( $force = false ) | ||
|---|---|---|
| $force | boolean |
Выполнить сборку мусора независимо от $gcProbability. По умолчанию false, что означает, что фактическое удаление происходит с вероятностью, указанной $gcProbability. |
getValue() защищённый метод
Извлекает значение из кэша по указанному ключу.
Этот метод должен быть реализован дочерними классами для извлечения данных из конкретного хранилища кэша.
| защищённый string|boolean getValue ( $key ) | ||
|---|---|---|
| $key | string |
Уникальный ключ, идентифицирующий кэшируемое значение |
| return | string|boolean |
Сохраненное значение в кэше, false, если значение отсутствует в кэше или истекло. |
init() общественный метод
Инициализирует компонент Cache.
Этот метод инициализирует свойство $db, чтобы убедиться, что оно ссылается на корректное подключение к MongoDB.
| общественный void init ( ) | ||
|---|---|---|
| throws | yii\base\InvalidConfigException |
если $db некорректен. |
setValue() защищённый метод
Сохраняет значение, идентифицируемое ключом, в кэше.
Этот метод должен быть реализован дочерними классами для сохранения данных в конкретном хранилище кэша.
| защищённый boolean setValue ( $key, $value, $expire ) | ||
|---|---|---|
| $key | string |
Ключ, идентифицирующий значение для кэширования |
| $value | string |
Значение для кэширования |
| $expire | integer |
Количество секунд, в течение которых кэшированное значение будет действовать. 0 означает, что срок действия не ограничен. |
| return | boolean |
True, если значение успешно сохранено в кэше, иначе false |
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-mongodb-cache.html