Commit 5d9d8a71 by Alexander Makarov

Merge pull request #6965 from nepster-web/patch-3

[skip ci] Update caching-data.md
parents 3a1e4523 fdeebfdc
......@@ -5,7 +5,7 @@
основой для расширенных возможностей, таких как [кэширование запросов](#query-caching)
и [кэширование страниц](caching-page.md).
Приведённый ниже код является типичным случаем кэширования данных, где `$cache` указывает на [компонент кеширования](#cache-components):
Приведённый ниже код является типичным случаем кэширования данных, где `$cache` указывает на [компонент кэширования](#cache-components):
```php
// Пробуем извлечь $data из кэша.
......@@ -23,7 +23,7 @@ if ($data === false) {
```
## Компоненты кеширования <a name="cache-components"></a>
## Компоненты кэширования <a name="cache-components"></a>
Кэширование данных опирается на *компоненты кэширования*, которые представляют различные хранилища, такие как память,
файлы и базы данных.
......@@ -82,7 +82,7 @@ Yii поддерживает множество хранилищ кэша:
вы должны создать таблицу, как описано в [[yii\caching\DbCache::cacheTable]].
* [[yii\caching\DummyCache]]: является кэшем-пустышкой, не реализующим реального кэширования. Смысл этого компонента в
упрощении кода, который должен проверить наличие кэша. Вы можете использовать данный тип кэша, например, при разработке
или если сервер не поддерживает кэш и переключиться на реальное кеширование позже. Для извлечения данных, в этом случае,
или если сервер не поддерживает кэш и переключиться на реальное кэширование позже. Для извлечения данных, в этом случае,
используется один и тот же код `Yii::$app->cache->get($key)`. При этом можно не беспокоиться, что `Yii::$app->cache`
может быть `null`.
* [[yii\caching\FileCache]]: использует обычные файлы для хранения кэшированных данных. Замечательно подходит для
......@@ -129,7 +129,7 @@ Yii поддерживает множество хранилищ кэша:
[[yii\caching\Cache::mget()|mget()]] и [[yii\caching\Cache::madd()|madd()]]. В случае, если хранилище не поддерживает
эту функцию, она будет имитироваться.
Так как [[yii\caching\Cache]] реализует `ArrayAccess`, компонент кеша можно испльзовать как массив:
Так как [[yii\caching\Cache]] реализует `ArrayAccess`, компонент кэша можно испльзовать как массив:
```php
$cache['var1'] = $value1; // эквивалентно: $cache->set('var1', $value1);
......@@ -179,7 +179,7 @@ $value2 = $cache['var2']; // эквивалентно: $value2 = $cache->get('v
Элементы данных, хранимые в кэше, остаются там навсегда если только они не будут удалены из-за особенностей
функционирования хранилища (например, место для кэширования заполнено и старые данные удаляются). Чтобы изменить этот
режим, вы можете передать истечение срока действия ключа при вызове метода [[yii\caching\Cache::set()|set()]].
Параметр указывает, сколько секунд элемент кеша может считаться актуальным. Если срок годности ключа истёк,
Параметр указывает, сколько секунд элемент кэша может считаться актуальным. Если срок годности ключа истёк,
[[yii\caching\Cache::get()|get()]] вернёт `false`:
......@@ -259,7 +259,7 @@ $result = $db->cache(function ($db) {
Кэширование запросов имеет три глобальных конфигурационных параметра через [[yii\db\Connection]]:
* [[yii\db\Connection::enableQueryCache|enableQueryCache]]: включить или выключить кэширование запросовю.
* [[yii\db\Connection::enableQueryCache|enableQueryCache]]: включить или выключить кэширование запросов.
По умолчанию `true`. Стоит отметить, что для использования кэширования вам может понадобиться компонент
cache, как показано в [[yii\db\Connection::queryCache|queryCache]].
* [[yii\db\Connection::queryCacheDuration|queryCacheDuration]]: количество секунд, в течение которых результат кэшируется.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment