This package provides a custom file cache driver that supports Cache Tags for Laravel 5.1 or Lumen 5.2+.
This product is publicly available under the terms of the MIT license included in this repository. Please refer to the current brand guidelines for use of the existing brand.
First, you'll need to require the package with Composer:
composer require whosphp/tfilecache
Then, update config/app.php
by adding an entry for the service provider.
'providers' => [
// ...
Unikent\Cache\TaggableFileCacheServiceProvider::class
];
Finally, add the necessary config to config\cache.php
.
'default' => env('CACHE_DRIVER', 'tfile'),
'stores' => [
'tfile' => [
'driver' => 'tfile',
'path' => storage_path('framework/cache'),
'connection' => null,
'queue' => null,
'separator' => null,
],
// ...
],
There are some optional config options available in the store definition above:
connection
: accepts the string name of a queue connection to use for tag clean up, will use the default queue connection if omitted.
queue
: accepts the string name of a queue to use for tag clean up, will use the default queue if omitted.
separator
: defines the separator character or sequence to be used internally, this should be chosen to never collide with a key value. defaults to ~#~
if omitted.
To offset the work of cleaning up cache entries when a tag is flushed this task is added as a Job
and queued using laravel's inbuilt queueing.
Note: laravel's default queue driver is sync
which will result in the job being executed synchronously,
it is strongly advised you use an alternate queue driver with appropriate workers to offset this work
if you wish to use this cache driver.