hms5232/laravel-twin-cache

此包已废弃,不再维护。未建议替代包。

在Laravel中灵活使用二级缓存。

v0.1.2 2022-08-28 07:52 UTC

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

查看许可证