bnomei/kirby3-redis-cachedriver

基于Redis的缓存驱动

1.8.0 2022-12-11 12:09 UTC

README

Release Downloads Build Status Coverage Status Maintainability Twitter

基于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?

MemcachedAPCu有更严格的默认配置。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设置内容文件的缓存。

设置

依赖项

免责声明

此插件“按原样”提供,不提供任何保证。自行承担风险使用,并在生产环境中使用之前始终自行测试。如果您发现任何问题,请创建新问题

许可

MIT

不建议在任何推广种族主义、性别歧视、恐同、动物虐待、暴力或其他任何形式仇恨言论的项目中使用此插件。