Ой, ничего не найдено!

К сожалению, по вашему запросу пока ничего нет (но это только пока!), зато вы можете подписаться на нашу замечательную email-рассылку, чтобы не пропустить самое интересное в будущем.

  • 459

Кэширование в Laravel

  • 1 минута на чтение

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

Основные команды для кэша

Laravel поддерживает Artisan-команды для управления кэшем:

  1. Очистка кэша приложения: php artisan cache:clear Удаляет все записи в текущем драйвере кэша.
  2. Очистка маршрутов: php artisan route:clear
  3. Очистка скомпилированных представлений: php artisan view:clear
  4. Очистка конфигурации: php artisan config:clear
  5. Очистка кэша событий: php artisan event:clear
  6. Сброс всех кэшированных данных (кроме файлов): php artisan optimize:clear

Использование кэша в коде

Установка значения в кэш:

Cache::put('key', 'value', $seconds);

Пример:

Cache::put('user_name', 'John', 3600); // Данные сохраняются на 1 час

Получение значения из кэша:

$value = Cache::get('key', 'default_value');

Пример:

$userName = Cache::get('user_name', 'Guest');

Проверка существования ключа:

if (Cache::has('key')) { // Ключ существует }

Удаление значения:

Cache::forget('key');

Работа с замыканиями

Для упрощения загрузки данных, если они отсутствуют в кэше, используется метод remember:

$value = Cache::remember('key', $seconds, function () { return DB::table('users')->get(); });

Метод rememberForever сохраняет данные навсегда:

Первый месяц за 0 рублей
Хостинг для сайта, который должен работать стабильно
Перенесите проект или запустите новый сайт на Siteko.net и протестируйте сервис без предоплаты.
Перейти к хостингу
$value = Cache::rememberForever('key', function () { return 'Permanent value'; });

Драйверы кэша

Laravel поддерживает несколько драйверов для кэширования:

  1. file: Кэш хранится в файловой системе (по умолчанию). Подходит для небольших приложений.
  2. database: Хранение в базе данных. Нужно создать таблицу кэша командой: php artisan cache:table php artisan migrate
  3. redis: Использует Redis. Рекомендуется для высоконагруженных приложений.
  4. memcached: Для приложений с требованием высокой скорости.
  5. array: Хранение в массиве. Полезно для тестирования.

Настройка драйвера кэша

В файле config/cache.php можно задать используемый драйвер:

'default' => env('CACHE_DRIVER', 'file'),

Пример смены драйвера на Redis:

CACHE_DRIVER=redis

Очистка кэша на определённом драйвере

Для работы с конкретным драйвером:

Cache::store('redis')->clear();

Первый месяц бесплатно

Хостинг Siteko.net для стабильного запуска сайта

Разместите проект на Siteko.net и проверьте скорость, панель управления и поддержку без стартовой оплаты.

  • 1 месяц бесплатно для новых клиентов сразу после выбора тарифа.
  • Быстрый старт для лендинга, блога или корпоративного сайта.
  • Поддержка рядом поможет с переносом и настройкой проекта.
Выбрать тариф