Spec-Zone.ru › Yii 2.0

Класс yii\caching\MemCache

Все классы | Свойства | Методы
Наследование yii\caching\MemCache » yii\caching\Cache » yii\base\Component » yii\base\Object
Реализует yii\base\Configurable, yii\caching\CacheInterface
Доступно с версии 2.0
Исходный код https://github.com/yiisoft/yii2/blob/master/framework/caching/MemCache.php

MemCache реализует компонент кеширования, основанный на memcache и memcached.

MemCache поддерживает как memcache, так и memcached. Установив $useMemcached в true или false, можно выбрать использование memcached или memcache соответственно.

MemCache можно настроить со списком серверов memcache, установив свойство $servers. По умолчанию MemCache предполагает, что сервер memcache работает на localhost на порту 11211.

См. yii\caching\Cache для общих операций кеширования, которые поддерживает MemCache.

Обратите внимание, что нет мер безопасности для защиты данных в memcache. К любым данным в memcache может получить доступ любой процесс, запущенный в системе.

Для использования MemCache в качестве компонента приложения кеширования, настройте приложение следующим образом:

[
    'components' => [
        'cache' => [
            'class' => 'yii\caching\MemCache',
            'servers' => [
                [
                    'host' => 'server1',
                    'port' => 11211,
                    'weight' => 60,
                ],
                [
                    'host' => 'server2',
                    'port' => 11211,
                    'weight' => 40,
                ],
            ],
        ],
    ],
]

В примере выше используются два сервера memcache: server1 и server2. Вы можете настроить больше свойств каждого сервера, такие как persistent, weight, timeout. См. yii\caching\MemCacheServer для доступных опций.

Для получения более подробной информации и руководства по использованию кеша, см. статью руководства по кешированию.

Публичные свойства

Свойство Тип Описание Определено в
$behaviors yii\base\Behavior[] Список поведений, присоединенных к этому компоненту yii\base\Component
$defaultDuration integer Срок действия по умолчанию в секундах, прежде чем запись в кеше истечет. yii\caching\Cache
$keyPrefix string Строка-префикс для каждого ключа кеша, чтобы он был уникальным во всем хранилище кеша. yii\caching\Cache
$memcache \Memcache|\Memcached Объект memcache (или memcached), используемый этим компонентом кеширования. yii\caching\MemCache
$options array Параметры для Memcached. yii\caching\MemCache
$password string Пароль sasl для Memcached. yii\caching\MemCache
$persistentId string Идентификатор, который идентифицирует экземпляр Memcached. yii\caching\MemCache
$serializer null|array|false Функции для сериализации и десериализации данных кеша. yii\caching\Cache
$servers yii\caching\MemCacheServer[] Список конфигураций серверов memcache. yii\caching\MemCache
$useMemcached boolean Использовать memcached или memcache в качестве базового расширения кеширования. yii\caching\MemCache
$username string Имя пользователя sasl для Memcached. yii\caching\MemCache

Публичные методы

Метод Описание Определено в
__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
get() Извлекает значение из кэша с указанным ключом. yii\caching\Cache
getBehavior() Возвращает объект именованного поведения. yii\base\Component
getBehaviors() Возвращает все присоединённые к этому компоненту поведения. yii\base\Component
getMemcache() Возвращает базовый объект memcache (или memcached). yii\caching\MemCache
getOrSet() Метод объединяет методы set() и get() для извлечения значения, идентифицированного ключом $key, или для хранения результата выполнения $callable, если для $key нет кэшированного значения. yii\caching\Cache
getServers() Возвращает конфигурации серверов memcache или memcached. yii\caching\MemCache
hasEventHandlers() Возвращает значение, указывающее, есть ли обработчик, присоединённый к указанному событию. yii\base\Component
hasMethod() Возвращает значение, указывающее, определён ли метод. yii\base\Object
hasProperty() Возвращает значение, указывающее, определено ли свойство. yii\base\Object
init() Инициализирует этот компонент приложения. yii\caching\MemCache
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
setServers() yii\caching\MemCache
trigger() Вызывает событие. yii\base\Component

Защищенные методы

Метод Описание Определено в
addMemcacheServers() Добавляет серверы в пул серверов кэша, указанный для расширения memcache PECL. yii\caching\MemCache
addMemcachedServers() Добавляет серверы в пул серверов кэша, указанный для расширения memcached PECL. yii\caching\MemCache
addServers() Добавляет серверы в пул серверов кэша, указанный. yii\caching\MemCache
addValue() Сохраняет значение, идентифицированное ключом, в кэш, если этот ключ в кэше отсутствует. yii\caching\MemCache
addValues() Добавляет несколько пар ключ-значение в кэш. yii\caching\Cache
deleteValue() Удаляет значение с указанным ключом из кэша. Это реализация метода, объявленного в родительском классе. yii\caching\MemCache
flushValues() Удаляет все значения из кэша. yii\caching\MemCache
getValue() Извлекает значение из кэша по указанному ключу. yii\caching\MemCache
getValues() Извлекает несколько значений из кэша по указанным ключам. yii\caching\MemCache
setValue() Сохраняет значение, идентифицированное ключом, в кэше. yii\caching\MemCache
setValues() Сохраняет несколько пар ключ-значение в кэше. yii\caching\MemCache

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

$memcache публичное свойство только для чтения

Объект memcache (или memcached), используемый этим компонентом кэша.

public \Memcache|\Memcached getMemcache ( )

$options публичное свойство

Параметры для Memcached. Это свойство используется только когда $useMemcached равно true.

См. также http://ca2.php.net/manual/en/memcached.setoptions.php.

public array $options = null

$password публичное свойство

Пароль SASL для Memcached. Это свойство используется только когда $useMemcached равно true.

См. также http://php.net/manual/en/memcached.setsaslauthdata.php.

public string $password = null

$persistentId публичное свойство

Идентификатор, который идентифицирует экземпляр Memcached. Это свойство используется только когда $useMemcached равно true. По умолчанию экземпляры Memcached уничтожаются в конце запроса. Чтобы создать экземпляр, сохраняющийся между запросами, вы можете указать уникальный идентификатор для экземпляра. Все экземпляры, созданные с одинаковым идентификатором, будут использовать одно и то же соединение.

См. также http://ca2.php.net/manual/en/memcached.construct.php.

public string $persistentId = null

$servers публичное свойство

Список конфигураций серверов memcache.

public yii\caching\MemCacheServer[] getServers ( )
public void setServers ( $config )

$useMemcached публичное свойство

Использовать memcached или memcache в качестве базового расширения кэша. Если равно true, будет использоваться memcached. Если равно false, будет использоваться memcache. По умолчанию равно false.

public boolean $useMemcached = false

$username публичное свойство

Имя пользователя SASL для Memcached. Это свойство используется только когда $useMemcached равно true.

См. также http://php.net/manual/en/memcached.setsaslauthdata.php.

public string $username = null

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

addMemcacheServers() защищённый метод

Добавление серверов в пул серверов кэша, указанного. Используется для расширения memcache PECL.

защищённый void addMemcacheServers ( $cache, $servers )
$cache \Memcache
$servers yii\caching\MemCacheServer[]

addMemcachedServers() защищённый метод

Добавление серверов в пул серверов кэша, указанного. Используется для расширения memcached PECL.

защищённый void addMemcachedServers ( $cache, $servers )
$cache \Memcached
$servers yii\caching\MemCacheServer[]

addServers() защищённый метод

Добавление серверов в пул серверов кэша, указанного.

защищённый void addServers ( $cache, $servers )
$cache \Memcache|\Memcached
$servers yii\caching\MemCacheServer[]
throws yii\base\InvalidConfigException

addValue() защищённый метод

Сохраняет значение, определяемое ключом, в кэше, если кэш не содержит этот ключ.

Это реализация метода, объявленного в родительском классе.

См. также Memcache::set().

защищённый boolean addValue ( $key, $value, $duration )
$key string

Ключ, определяющий значение для кэширования

$value mixed

Значение для кэширования

$duration integer

Количество секунд, в течение которых кэшированное значение будет действовать. 0 означает, что значение никогда не истечёт.

return boolean

True, если значение успешно сохранено в кэш, иначе false

deleteValue() защищённый метод

Удаляет значение с указанным ключом из кэша. Это реализация метода, объявленного в родительском классе.

защищённый boolean deleteValue ( $key )
$key string

Ключ значения, подлежащего удалению

return boolean

Если удаление прошло без ошибок

flushValues() защищённый метод

Удаляет все значения из кэша.

Это реализация метода, объявленного в родительском классе.

защищённый boolean flushValues ( )
return boolean

Успешность операции очистки.

getMemcache() публичный метод

Возвращает базовый объект memcache (или memcached).

публичный \Memcache|\Memcached getMemcache ( )
return \Memcache|\Memcached

Объект memcache (или memcached), используемый этой компонентой кэша.

throws yii\base\InvalidConfigException

если расширение memcache или memcached не загружено

getServers() публичный метод

Возвращает конфигурации сервера memcache или memcached.

публичный yii\caching\MemCacheServer[] getServers ( )
return yii\caching\MemCacheServer[]

Список конфигураций серверов memcache.

getValue() защищённый метод

Извлекает значение из кэша по заданному ключу.

Это реализация метода, объявленного в родительском классе.

защищённый mixed|false getValue ( $key )
$key string

Уникальный ключ, определяющий кэшированное значение

return mixed|false

Значение, сохранённое в кэше, false, если значение отсутствует в кэше или истекло.

getValues() защищённый метод

Извлекает несколько значений из кэша по указанным ключам.

защищённый array getValues ( $keys )
$keys array

Список ключей, определяющих кэшированные значения

return array

Список кэшированных значений, индексированных по ключам

init() публичный метод

Инициализирует эту компонент приложения.

Создаёт экземпляр memcache и добавляет серверы memcache.

публичный void init ( )

setServers() публичный метод

См. также:

  • http://php.net/manual/en/memcache.addserver.php
  • http://php.net/manual/en/memcached.addserver.php
публичный void setServers ( $config )
$config array

Список конфигураций серверов memcache или memcached. Каждый элемент должен быть массивом с ключами: host, port, persistent, weight, timeout, retryInterval, status.

setValue() защищённый метод

Сохраняет значение, идентифицируемое ключом, в кэше.

Это реализация метода, объявленного в родительском классе.

См. также Memcache::set().

защищённый boolean setValue ( $key, $value, $duration )
$key string

Ключ, определяющий значение для кэширования

$value mixed

Значение для кэширования.

$duration integer

Количество секунд, в течение которых кэшированное значение будет действовать. 0 означает, что значение никогда не истечёт.

return boolean

True, если значение успешно сохранено в кэш, иначе false

setValues() защищённый метод

Сохраняет несколько пар ключ-значение в кэше.

защищённый array setValues ( $data, $duration )
$data array

Массив, где ключ соответствует ключу кэша, а значение - хранимому значению

$duration integer

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

return array

Массив неудачных ключей.

© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-caching-memcache.html

Spec-Zone.ru

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