hms5232/ laravel-twin-cache
v0.1.2
2022-08-28 07:52 UTC
Requires
- php: ^7.3 || ^8.0
- illuminate/contracts: ^8.0
- illuminate/support: ^8.0
Requires (Dev)
- nunomaduro/collision: ^5.10
- orchestra/testbench: ^6.0
- squizlabs/php_codesniffer: *
This package is auto-updated.
Last update: 2024-10-02 05:12:43 UTC
README
在Laravel中灵活使用二级缓存。
安装
composer require hms5232/laravel-twin-cache
用法
配置
在config/cache.php
中添加twin
存储
'stores' => [ // other store config here 'twin' => [ 'driver' => 'twin', 'older' => env('TWIN_CACHE_OLDER', 'redis'), // First/preferred cache 'younger' => env('TWIN_CACHE_YOUNGER', 'database'), // Second/backup cache 'sync_ttl' => env('TWIN_CACHE_TTL'), // TTL for younger synced to older. Default is null => forever ], ],
在.env
中更改缓存驱动
CACHE_DRIVER=twin
方法
所有Laravel内置方法都会修改older
缓存,你可以给方法名添加后缀Twin
来实现双缓存。
例如,你想同时更新旧缓存和新缓存
Cache::put('foo', 'bar'); // change "put" to "putTwin" Cache::putTwin('foo', 'bar');
另一个例子,一个键在年轻缓存驱动中存在,但在旧缓存中不存在。你想在选中此键时同步这个键
// only select older cache Cache::get('foo'); // This will select older cache first // If no result, select younger, else return result // 1. If exists in younger, insert into older cache and return // 2. If it doesn't exist, return default value Cache::getTwin('foo', 'bar');
因此,你可以根据需要灵活地使用二级缓存。
方法列表
所有参数相同。
许可证
版权所有 (c) 2022 hms5232
查看许可证。