Laravel Packages

Efficiently remove expired cache data with Laravel Cache Evict

Published
Efficiently remove expired cache data with Laravel Cache Evict image

Caching is essential for speeding up expensive data retrieval and processing in production applications. Laravel provides several caching drivers to facilitate this. Two such drivers that come out of the box are the file and database cache drivers. Occasionally, it is a good idea to clear the cache, as regularly removing expired items can prevent storage overload, especially if you create many temporary items with random keys.

In Laravel, you can clear the cache using Cache::flush() or php artisan cache:clear. However, when using these methods, all entries are removed from the cache, including the framework cache, which can potentially cause issues with file cache driver permissions if, let's say, cache items are created by the www-data user, but /bootstrap/cache/* is owned by another user. Laravel Cache Evict is a package developed by Vincent Wong that helps you remove only the expired items in your cache in a memory-efficient and (for database caches) non-blocking way.

You install this package using Composer:

composer require vectorial1024/laravel-cache-evict

To evict the default cache in your Laravel app, you run:

php artisan cache:evict

Optionally, you can specify the cache to clear:

php artisan cache:evict file

Learn more about this package, including how to define your custom eviction strategies and view the source code on GitHub.

Yannick Lyn Fatt photo

Staff Writer at Laravel News and Full stack web developer.

Sponsored

laravelcloud logo
Laravel Cloud

Easily create and manage your servers and deploy your Laravel applications in seconds.

Visit Laravel Cloud

The latest

View all →
CPX: The Composer Package Executor for PHP image

CPX: The Composer Package Executor for PHP

Read article
Laravel AI SDK Adds Human-in-the-Loop Tool Approval image

Laravel AI SDK Adds Human-in-the-Loop Tool Approval

Read article
Pest 5 Released With Test Impact Analysis, Agent Verification, and Evals image

Pest 5 Released With Test Impact Analysis, Agent Verification, and Evals

Read article
Queue-SQL: Run Mass Deletes and Updates Across Parallel Queue Jobs image

Queue-SQL: Run Mass Deletes and Updates Across Parallel Queue Jobs

Read article
Blade Formatting in Laravel Pint image

Blade Formatting in Laravel Pint

Read article
Inertia DevTools Is Now on the Chrome Web Store image

Inertia DevTools Is Now on the Chrome Web Store

Read article