Может войдёшь?
Черновики Написать статью Профиль

Конфигурация кэша

перевод документация 3.x

Содержание

Основы

Представьте, что ваше приложение отображает десятку самых популярных песен, за которые голосуют пользователи. Вам действительно нужно, чтобы производился поиск этих десяти песен каждый раз, когда кто-то посещает ваш сайт? Как сделать, чтобы вы могли хранить их в течение 10 минут или даже час, что позволяет значительно ускорить ваше приложение? Кэширование Laravel делает это простым.

Laravel пять кэш драйверов из коробки:

  • File System
  • Database
  • Memcached
  • APC
  • Redis
  • Memory (Arrays)

По умолчанию, Laravel сконфигурирован для использования file системного кэш драйвера (хранение кэша в файлах). Этот драйвер включен по умолчанию и не требует дополнительного конфигурирования. Файловый драйвер сохраняет кешируемую информацию в виде файлов в cache директории. Если вас устраивает этот драйвер, больше вам делать ничего не нужно. Все готово к использованию.

Примечание: Перед использованием файлового кэша убедитесь, что директория storage/cache имеет права на запись.

База данных

Драйвер базы данных использует таблицу базы данных в виде простого хранилища ключ-значение. Для включения этого способа кэширования, сначала установите имя таблицы в application/config/cache.php:

'database' => array('table' => 'laravel_cache'),

Затем, создайте таблицу в вашей базе данных. Таблица должна иметь три поля:

  • key (varchar)
  • value (text)
  • expiration (integer)

Это все. Как только ваша конфигурация и таблица определены, вы готовы к работе!

Memcached

Memcached - очень быстрая, свободная объектно-ориентированная кэширующая система часто используемая в том числе такими крупными сайтами, как Wikipedia и Facebook. Перед использованием этой системы в Laravel вам необходимо убедиться, что Memcached, как расширение PHP, установлен на вашем сервере.

Если Memcached установлен, просто установите driver в application/config/cache.php файле:

'driver' => 'memcached'

Затем, добавьте ваши Memcached серверы в servers массив:

'servers' => array(
     array('host' => '127.0.0.1', 'port' => 11211, 'weight' => 100),
)

Redis

Redis - документо-ориентированное сетевое журналируемое хранилище данных типа «ключ-значение» с открытым исходным кодом. Он часто упоминается в качестве сервера структур данных, которые могут содержать строки, хэши, списки, множества, and сортированные множества.

Перед использованием вам нужно конфигурировать ваши Redis серверы. После этого установите driver в application/config/cache.php:

'driver' => 'redis'

Ключи кэша

Чтобы избежать конфликтов имен с другими приложениями при использовании APC, Redis или Memcached серверов, Laravel добавляет key для каждого элемента, хранящегося в кэш с помощью этих драйверов.Вы можете изменить это значение:

'key' => 'laravel'

Кэширование в памяти

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

Написать комментарий

Разметка: ? ?

Авторизуйся, чтобы прокомментировать.