bentools/cache

PSR-6 和 PSR-16 缓存适配器。

1.1 2020-04-20 08:33 UTC

This package is auto-updated.

Last update: 2024-09-20 18:28:51 UTC


README

Latest Stable Version License Build Status Coverage Status Quality Score Total Downloads

bentools/cache

使用方法

缓存回退

如果调用缓存方法抛出异常,它将回退到另一个缓存池。

use BenTools\Cache\Fallback\CacheFallback;
use Cache\Adapter\Memcache\MemcacheCachePool;
use Cache\Adapter\Redis\RedisCachePool;

$main = new RedisCachePool(new Redis());
$default = new MemcacheCachePool(new Memcache());
$cache = new CacheFallback($main, $default);
$cache->get('foo'); // if $main->get('foo') throws an exception, will call $default->get('foo')

您可以使用任意数量的缓存池,这样失败的缓存就会回退到下一个健康的缓存

use BenTools\Cache\Fallback\CacheFallback;
use Cache\Adapter\Memcache\MemcacheCachePool;
use Cache\Adapter\Redis\RedisCachePool;
use Cache\Adapter\PHPArray\ArrayCachePool;

$redis = new RedisCachePool(new Redis());
$memcache = new MemcacheCachePool(new Memcache());
$arrayCache = new ArrayCachePool();
$cache = new CacheFallback($redis, $memcache, $arrayCache);
$cache->get('foo');

安装

composer require bentools/cache

测试

./vendor/bin/phpunit

许可证

MIT.