bnomei / kirby3-redis-cachedriver
基于Redis的缓存驱动
1.8.0
2022-12-11 12:09 UTC
Requires
- php: >=8.0
- getkirby/composer-installer: ^1.1
- predis/predis: ^2.0
Requires (Dev)
- getkirby/cms: ^3.5
- php-coveralls/php-coveralls: ^2.1
- phpunit/phpunit: ^9.5
Suggests
- bnomei/kirby3-boost: Boost the speed of Kirby by having content files of pages (mem-)cached, with automatic unique ID, fast lookup and Tiny-URL.
- bnomei/kirby3-lapse: Cache any data until set expiration time
README
基于Redis的缓存驱动
商业使用
支持开源!
此插件是免费的,但如果您在商业项目中使用它,请考虑赞助我或捐款。
如果我的工作帮助您赚了一些钱,似乎对我来说,我也可能得到一些回报,对吧?
行善。分享一点。谢谢。
- Bruno
安装
- 将master.zip解压为文件夹
site/plugins/kirby3-redis-cachedriver
或 git submodule add https://github.com/bnomei/kirby3-redis-cachedriver.git site/plugins/kirby3-redis-cachedriver
或composer require bnomei/kirby3-redis-cachedriver
为什么选择Redis?
Memcached和APCu有更严格的默认配置。Redis没有这些限制,并且经过适当的配置非常快。
设置缓存
将Kirby 3的缓存驱动设置为redis
用于插件缓存或在您的site/config/config.php
中。所有与redis相关的参数都可以是回调函数。您甚至可以从.env文件中加载值。
site/config/config.php
return [ 'bnomei.boost.cache' => [ 'type' => 'redis', 'host' => function() { return env('REDIS_HOST'); }, 'port' => function() { return env('REDIS_PORT'); }, // 'database' => function() { return env('REDIS_DATABASE'); }, // 'password' => function() { return env('REDIS_PASSWORD'); }, ], ];
缓存方法
$redis = \Bnomei\Redis::singleton(); $redis->set('key', 'value', $expireInMinutes); $value = $redis->get('key', $default); $redis->remove('key'); $redis->flush(); // data in memory $redis->flushdb(); // DANGER: flushes full redis db!!!
Predis客户端
$redis = new \Bnomei\Redis($options, $optionsClient); $client = $redis->redisClient(); $dbsize = $client->dbsize(); // https://bit.ly/2Z8YKyN
基准测试
$redis = new \Bnomei\Redis($options, $optionsClient); $redis->benchmark(1000);
redis : 0.29747581481934 file : 0.24331998825073
注意:这将创建和删除许多Redis中的缓存文件和条目
调试时无缓存
当Kirby的全局调试配置设置为true
时,不会读取缓存。但会创建条目。这会使您的生活更加轻松——相信我。
如何使用Lapse或Boost与Redis缓存驱动一起使用
您需要将lapse插件的缓存驱动设置为redis
。
site/config/config.php
<?php return [ 'bnomei.lapse.cache' => ['type' => 'redis'], 'bnomei.boost.cache' => ['type' => 'redis'], //... other options ];
设置内容文件缓存
使用Kirby 3 Boost设置内容文件的缓存。
设置
依赖项
免责声明
此插件“按原样”提供,不提供任何保证。自行承担风险使用,并在生产环境中使用之前始终自行测试。如果您发现任何问题,请创建新问题。
许可
不建议在任何推广种族主义、性别歧视、恐同、动物虐待、暴力或其他任何形式仇恨言论的项目中使用此插件。