Конфигурирование кеша
Файл конфигурации кеша приложения находится в config/cache.php. В этом файле вы можете указать, какой драйвер кеша хотите использовать по умолчанию для всего приложении.
Laravel из коробки поддерживает популярные механизмы кеширования, такие как Memcached, Redis, DynamoDB, реляционные базы данных. Кроме баз данных, доступен драйвер кеширования на основе файлов.
Memcached
Для использования драйвера Memcached требуется установить пакет пакет Memcached PECL. Вы можете перечислить все ваши серверы Memcached в файле конфигурации config/cache.php. Этот файл уже содержит начальную запись memcached.servers:
config/cache.php'memcached' => [
'servers' => [
[
'host' => env('MEMCACHED_HOST', '127.0.0.1'),
'port' => env('MEMCACHED_PORT', 11211),
'weight' => 100,
],
],
],
Перед использованием кеша, нужно установить глобальную переменную в файле .env:
.envCACHE_DRIVER=memcached
Redis
Перед использованием драйвера кеша Redis, нужно будет установить predis через composer:
composer require predis/predis
В файле config/database.php заменяем следующию строку:
config/database.php'client' => env('REDIS_CLIENT', 'phpredis')
На:
config/database.php'client' => env('REDIS_CLIENT', 'predis')
Перед использованием кеша, нужно установить глобальную переменную в файле .env:
.envCACHE_DRIVER=redis
DynamoDB
Перед использованием драйвера кэша DynamoDB необходимо создать таблицу DynamoDB для хранения всех кэшированных данных. Название таблицы должно совпадать с stores.dynamodb.table в конфигурационном файле cache вашего приложения, обычно это cache.
Эта таблица также должна иметь строковый ключ раздела с именем, соответствующим значению элемента конфигурации stores.dynamodb.attributes.key в конфигурационном файле cache, по умолчанию это key.
Перед использованием кеша, нужно установить глобальную переменную в файле .env:
.envCACHE_DRIVER=dynamodb
Файловый
Файловый кеш, установлен по умолчанию в Laravel. На сервере в файловой структуре, данные хранятся в зашифрованных файлах, которые находятся по пути storage/framework/. Laravel создает зашифрованный файл с данными и ключом кэша. Когда пользователь пытается получить содержимое, фасад Cache в Laravel выполняет поиск указанного ключа в папках, если ключ найден возвращается содержимое.
Перед использованием кеша, нужно установить глобальную переменную в файле .env:
.envCACHE_DRIVER=file