描述
由Redis提供支持的持久对象缓存后端。 支持 Predis 、 PhpRedis(PECL) 、Relay、replication、sentinels、clustering 和WP-CLI。
要调整连接参数、前缀缓存键或配置复制/群集,请参阅配置选项。
Object Cache Pro
一个商业级的Redis对象缓存后端。 真正可靠、高度优化、完全可定制,并在您最需要的时候配备专门的工程师。
- 针对原始性能重写
- 100% WordPress API兼容
- 加快序列化和压缩
- 易于调试的&日志记录
- 缓存预取和分析
- 完全单元测试(100%代码覆盖率)
- 使用TLS实现安全连接
- 通过WordPress WP CLI进行健康检查&
- 针对WooCommerce,Jetpack&Yoast SEO优化
1 Redis 是 Redis Ltd 的注册商标。其中的任何权利均归 Redis Ltd 保留。Redis Object Cache 的任何使用仅供参考,并不表明 Redis 和 Redis Object Cache 之间有任何赞助、认可或从属关系。
故障排除
常见问题解答和常见错误的故障排除可在FAQ中找到。 阅读这些总是比在支持论坛中等待响应要快。
配置
该插件提供了大量的配置选项和连接示例。 高级用户可以咨询扩展和复制
WP CLI命令
Redis对象缓存有各种WP CLI命令,安装插件后运行wp help redis获取更多信息
。
屏幕截图
安装
有关详细的安装说明,请阅读详细的安装说明。
评价
贡献者及开发者
更新日志
2.5.4
- 集群连接遵守
WP_REDIS_SCHEME
- 修复了 Predis 和
SentinelReplication
连接的问题 - 修复了
admin.css
URL 中的双斜线问题
2.5.3
- 添加了
WP_REDIS_DISABLE_GROUP_FLUSH
常量 - 添加了
redis_cache_manager_capability
过滤器和WP_REDIS_MANAGER_CAPABILITY
常量。 - 为 PhpRedis 集群连接添加了
WP_REDIS_SSL_CONTEXT
支持。 - 修复了 Predis 和集群/复制连接的若干问题
- 修复了
show_error_and_die()
中罕见的致命错误
2.5.2
- 在 Lua 刷新脚本中遵守
WP_REDIS_FLUSH_TIMEOUT
- 改进
DISALLOW_FILE_MODS
支持 - 还原了对
sanitize_key_part()
的行为更改。 - 修复了
show_error_and_die()
中罕见的致命错误(再次)
2.5.1
- 为诊断添加了超时
- 支持罕见的不带
sockets
扩展的 PHP 安装 - 修复了
show_error_and_die()
中罕见的致命错误 -
修复了
sanitize_key_part()
= 2.5.0 = 中的弃用通知警告 -
需要 WordPress 4.6 或更高版本
- 仅在需要时加载文本域
- 添加了
WP_REDIS_DISABLE_DROPIN_CHECK
常量 - 遵守
file_mod_allowed
过滤器和DISALLOW_FILE_MODS
常量 - 重命名
.redis-write-test.tmp
测试文件为object-cache.tmp
- 在
wp_die()
之前调用redis_object_cache_error
动作 - 允许在其他地方定义
WP_REDIS_PLUGIN_PATH
- 添加了实验性的刷新时超时时间(默认为
5
秒) - 删除不必要的默认忽略组
2.4.4
- 改进对意外交易结果的处理
2.4.3
- 修正了 PHP
<=7.2
语法错误 - 修正了加载错误页面的翻译
2.4.2
- 使管理栏脚本更加强大
- 改进了
redis-error.php
中的恢复说明 - 改进 CloudLinux 检测
- 本地化改进
- 防止 W3 Total Cache 和 LiteSpeed Cache 覆盖下拉菜单
- 修复了使用 Predis 和数组语法时对 ACL 用户名的支持
2.4.1
- 修复 PHP
<=7.2
语法错误
2.4.0
- 切换对象缓存时清空缓存
- 当 Redis 无法访问时显示自定义错误信息
- 当 Redis 无法访问时,不允许启用对象缓存
- 已弃用有风险的
WP_REDIS_SERIALIZER
配置常量,请使用WP_REDIS_IGBINARY
代替。 - 使用 Predis 时支持
WP_REDIS_USERNAME
- 在管理栏节点中显示缓存命中率小数点
- 在显示
WP_REDIS_SERVERS
时隐藏秘密 - 改进 CloudLinux 的加速 WP 兼容性
- 管理栏缓存清除现在使用 AJAX
2.3.0
- 仅向管理员显示仪表板部件
- 已添加管理栏节点(使用
WP_REDIS_DISABLE_ADMINBAR
关闭该节点) - 已添加
WP_REDIS_SSL_CONTEXT
配置常量 - 连接错误时抛出错误
- 使用 Predis 时已添加对用户名的支持
- 已添加对从
WP_REDIS_PLUGIN_PATH
加载 Predis 的支持 - 使 Predis unix 套接字连接更严格
- 修正了罕见的群组刷新错误
- 修复了使用 Predis 时的群集 ping 问题
- 已将 Predis 更新至 v2.1.2
- 改进文件
2.2.4
- 延迟注册
wp redis CLI命令
- 不要与Object Cache Pro竞争wp redis命令
- 防止Perflab覆盖对象缓存插入
- 将Predis更新为v2.1.1
- 避免事务失败时出现类型错误
- 检查不兼容的内容类型标头
2.2.3
- 添加了
wp_cache_flush_group()
支持 - 将Credis更新为v1.14.0
- 从
wp_cache_flush()中删除$delay参数
- 阅读连接错误时,防止诊断中出现罕见错误
2.2.2
- 使用QM_Data_Cache代替QM_Data
- 修复了
WP_Error使用语句非复合名称
警告
2.2.1
- 添加了WordPress 6.1中的wp_cache_supports()函数
- 将Predis更新为v2.0.3
- 避免WP_Object_Cache::get()中的早期微时间()调用
- 支持查询监视器的新
QM_Data类
- 当管道返回意外结果时抛出异常
2.2.0
- 添加了
redis_cache_add_non_persistent_groups
过滤器 - 修复了
wp_add_dashboard_widget
参数 - 修复了Predis v2.0的
WP_REDIS_SERVERS
复制问题 - 修复了
WP_REDIS_CLUSTER
字符串支持 - 修复了MGET在get_multiple()调用中失败的问题
- 修复了管道故障时的几个警告
2.1.6
- 修复SVN差异
2.1.5
- 修复了
is_predis()调用
2.1.4
- 添加了
is_predis()帮助器
2.1.3
- 修复了wp_cache_add_multiple()和wp_cache_set_multiple()中的错误
2.1.2
- 修复并改进了wp_cache_*_multiple()逻辑
- 调用wp_cache_set_multiple()中的redis_object_cache_set操作
- 调用wp_cache_delete_multiple()中的redis_object_cache_delete操作
- 检查是否忽略原始组名,而不是整理的名称
- 删除跟踪
2.1.1
- 将PHP要求提升至7.2
- 将WP_REDIS_DIR重命名为WP_REDIS_PLUGIN_DIR
- 修复了诊断中罕见的致命错误
- 允许安装Predis v1.1 Composer
- 支持使用WP_REDIS_CLUSTER
字符串
2.1.0
- 将PHP要求提升至7.0
- 弃用的Credis和HHVM客户端
- 将Predis更新为v2.0.0
- 将Credis更新为v1.13.1
- 改进诊断中的群集可读性
- 改进的群集连接
- 修复了连接后ping群集的问题
- 修复了connect_using_credis()中的几个错误
2.0.26
- 修正了使用Predis时wp_cache_delete_multiple()中的一个错误
- 修复了缓存添加挂起时wp_cache_add_multiple()中的错误
2.0.25
- 删除了损坏的wp_cache_add_multiple()函数
2.0.24
- 改进指标标签/工具提示格式
- 修复指标图表不呈现的问题
- 将Predis更新为v1.1.10
- 将Credis更新为v1.13.0
- 支持
编写器/安装程序
v1和v2 - 找到外部插件时链接到设置页面
- 添加了
wp_cache_flush_runtime()
函数 - 添加了
wp_cache_add_multiple()函数
- 添加了
wp_cache_delete_multiple()函数
2.0.23
2.0.22
- PHP 8.1兼容性修复
- 升级至Predis v1.1.9
- 添加了小部件的设置链接
- 全面检查诊断窗格
- 将ApexChart更新为v3.30.0
- 激活后重定向至插件设置
- 修正了
diagnostics.php
文件的错误路径。 - 修复了设置选项卡中的图表溢出
- 修复Predis群集ping
- 避免在内容文件夹不可写时发出警告
2.0.21
- 添加了指标诊断
- 已添加
WP_Object_Cache::decr()
别名 - 移动了
diagnostics.php
文件
2.0.20
- 修复wp.org版本
2.0.19
- 使指标标识符唯一
- 为托管在Cloudways上的网站设置唯一前缀
- 当
WP_CLI
为true
时,不打印 HTML 调试注释。
2.0.18
- 已添加
redis_object_cache_trace
操作和WP_REDIS_TRACE
常量。 - 将ApexChart更新为v3.26.0
- 修复了
WP_REDIS_DISABLE_METRICS
的问题。
2.0.17
- 代码清理
- 修复了缺少的指标
- 固定文件系统测试
2.0.16
- 将Credis更新为v1.11.4
- 修复了插播通知样式
- 将指标移至专用类
- 已添加
redis_cache_validate_dropin
过滤器 - 使用
WP_DEBUG_DISPLAY
常量(而不是WP_DEBUG
常量)显示调试信息 - 修正
wp_cache_get_multiple()
中的罕见错误。 - 删除了
intval()
的用法
2.0.15
- 由于多站点环境中的问题,还原了
build_key()
的更改
2.0.14
- 使Object Cache Pro卡可翻译
- 已在诊断程序中添加
WP_REDIS_SERIALIZER
- 提高了
build_key()
的速度 - 支持通过环境变量设置
WP_REDIS_PREFIX
和WP_REDIS_SELECTIVE_FLUSH
。 - 已添加
WP_REDIS_METRICS_MAX_TIME
以调整存储的度量时限 - 延迟加载文本域和计划表,直到
init
钩子 - 将捆绑的Predis库升级至v1.1.6
- 防止
connect_using_credis()
中的变量引用问题
2.0.13
- 将捆绑的Predis库更新为v1.1.4
- 将
redis-cache
设为全局组,以改进多站点上的指标 - 切换到短数组语法
- 已为所有钩子添加
@since
标记 - 在 drop-in 中使用
parse_url()
代替wp_parse_url()
- 修正了
wp redis status
中的插件实例变量名。
2.0.12
- 固定字节度量计算
- 修正了非标准Predis配置的问题
- 改进WordPress编码标准
2.0.11
- 当使用 Predis 时,修正了
wp_cache_get_multiple()
中的一个问题。 - 防止诊断中出现未定义的索引通知
2.0.10
- 修正了在
wp_cache_get_multiple()
中对数值的非序列化。
2.0.9
- 使用颜色突出显示当前指标类型
- 禁用指标时显示“指标”选项卡
- 重构连接和Redis状态逻辑
- 将Predis更新为v1.1.2
- 删除Predis弃用通知
- 修复了在
wp_cache_get_multiple()
中获取派生键的问题。
2.0.8
- 修复了由于www.example.com SVN问题而在2.0.6和2.0.7中无法使用的选项卡WP.org
2.0.7
- 修复了
wp_cache_get_multiple()
的问题。
2.0.6
- 诊断中添加了实验性文件系统测试
- 重构了设置选项卡逻辑(也修复了跳转问题)
- 修复了
wp_cache_get_multiple()
的问题。 - 从
wp_cache_delete()
返回布尔值 - 使用
redis-cache
作为 JS 事件命名空间 - 禁用横幅时隐藏小部件中的Pro行
- 将
redis_object_cache_get_multi
动作重命名为redis_object_cache_get_multiple
。
2.0.5
2.0 版是对插件的重大重写。请阅读 v2.0.0 发布说明。
- 修复了多站点操作按钮失灵的问题
- 删除了过时的 PHP 5.4 警告
- 为 Credis 添加了
read_timeout
支持 - 使用 Credis 时显示连接参数
- 已添加 Predis 升级通知的维基链接
2.0.4
- 当 dropin 过时时,尝试可靠地更新它
- 在设置屏幕上显示 ACL 用户名
- 使用
wp redis status
显示完整诊断信息 - 复制
object-cache.php
时,始终设置FS_CHMOD_FILE
- 不要在密码诊断中对子弹进行编码
- 更新 dropin 时调用
redis_object_cache_update_dropin
2.0.3
- 禁用度量标准时隐藏 “度量标准 “选项卡
- 修复了
admin.js
在多站点环境中无法加载的问题。 - 避免在与度量指标交互时出现致命错误,但 Redis 却消失了
- 已添加
WP_Object_Cache::__get()
以实现向后兼容性
2.0.2
- 更新了 POT 文件和译者注释
2.0.1
- 支持旧版本的查询监控器
- 使 “Dropin “状态更有帮助
- 当 Redis 版本不可用时,在设置中隐藏 Redis 版本
- 使用
composer-custom-directory-installer
软件包时折叠的依赖路径 - 防止
QM_Collector
与其他插件冲突 - 防止无法使用缓存时出现度量问题
- 修复了插件列表中的 “设置 “链接
- 修正了
WP_REDIS_DISABLED
逻辑
2.0.0
2.0 版是一次重大重写。插件现在需要 PHP 5.6,就像 WordPress 5.2 一样。
GitHub 和 Composer 存储库从 tillkruss/redis-cache
移至 rhubarbgroup/redis-cache
。
在多站点网络上,升级到 v2.x 后,请务必 “网络激活 “插件。
- 要求 PHP 5.6
- 插件现在 “仅限网络 “使用
- 转而采用 WPCS 编码标准
- 全面修改了设置屏幕
- 添加了对象缓存指标(在仪表板部件和设置上)
- 已添加对查询监控器的支持
- 在所有文件中添加了
Rhubarb\RedisCache
命名空间 - 已添加对 WP 5.5 的新
wp_cache_get_multi()
函数的支持。 - 已添加
redis_object_cache()
函数来检索插件实例 - 在网络仪表板中添加了下拉警告
- 已添加对设置哨兵数据库编号的支持
- 支持 Redis 6 ACL 用户名和密码验证
- 支持覆盖设置屏幕上现有的下拉菜单
- 使用单例模式实例化插件
- 使用 Composer 安装和加载 Predis
- 在更新插件时更新对象缓存下拉菜单
- 使用不同的方法连接所有客户
- 删除了
CUSTOM_USER_TABLE
和CUSTOM_USER_META_TABLE
的怪异之处 - 已添加
主题
为忽略组 - 将默认连接和读取超时更改为 1 秒
- 防止
add_or_replace()
中出现竞赛条件 - 将
WP_CACHE_KEY_SALT
重新命名为WP_REDIS_PREFIX
以提高清晰度。 - 用 “副本 “取代 “从属 “术语
- 只有
SELECT
数据库不是0
1.6.1
- 修复了在 AJAX 请求期间显示页脚注释的问题
1.6.0
- 改进了组名清理(感谢@naxvog)
- 防止在替换外来的dropin时出现致命的错误
- 添加了带有可选调试信息的HTML页脚注释
- 删除前缀建议
HTML页脚注释仅在启用WP_debug
时打印调试信息。要完全禁用注释,请将WP_REDIS_disable_comment
常量设置为true
1.5.9
- 修正了构造函数中丢失的
$info
变量赋值 - 修复了MaxTTL警告条件
- 切换到使用默认按钮样式
1.5.8
- 添加了关于无效MaxTTL的警告消息
- 添加了关于未维护Predis库的警告
- 添加了有关更短、易于阅读的前缀的建议
- 在设置中添加了Redis Cache Pro兼容性
- 修复了前缀包含特殊字符时该高速缓存的问题
- 使用群集时调用 Redis
INFO
的错误修正 - 稍微清理了一下设置
1.5.7
- 增加了对PhpRedis TLS连接的支持
- 增加了使用PhpRedis集群时对超时、读取超时和密码的支持
- 修复了
INFO
命令的问题 - 修复了设置缓存键时的对象克隆
1.5.6
- 将对象克隆添加到内存缓存中
- 修正了与
read_timeout
参数相关的 PHP 通知
1.5.5
请在更新drop到v1.5.5后刷新对象缓存,以避免死键填满Redis内存。
- 删除了小写键
- 删除计划的度量事件
- 修复了使用复制时Redis版本调用的问题
1.5.4
- 删除指标
1.5.3
- 已修复:调用未定义的函数
get_plugin_data()
。 - 已修复:调用未定义的方法
WP_Object_Cache::redis_version()
。
1.5.2
- 在诊断中添加Redis版本
- 已添加
WP_REDIS_DISABLE_BANNERS
常量以禁用促销活动 - 修正了
redis.replicate_commands()
中的一个问题。
1.5.1
今天(11 月 14 日)是该插件诞生 5 周年的日子,因此也应在今天发布商业版。
Object Cache Pro 是一款真正可靠、高度优化且易于调试的重写插件,适用于中小企业。
- 添加了操作的执行时间
- 已添加
WP_REDIS_VERSION
常量 - 修复了PhpRedis v3兼容性
- 修复了选择性刷新的问题
- 修复了
mb_*
函数不存在的问题 - 已将电子邮件地址编码器卡更换为Redis Cache Pro卡
- 收集版本指标以做出更好的决策
1.5.0
由于Predis不再维护,强烈建议您切换到PhpRedis(Redis PECL扩展)。
- 改进的Redis密钥名生成器
- 添加了对PhpRedis序列化程序的支持
- 已添加
redis_object_cache_error
操作 - 添加了超时、读取超时和重试配置
- 已添加不可刷新组(默认为
['userlogins']
) - 固定密码不显示在服务器列表中
1.4.3
- 需要PHP 5.4或更新版本
- 在诊断中使用美观打印
- Redis库丢失时抛出异常
- 修复了某些用户无法刷新缓存的问题
- 修正了当
WP_REDIS_DISABLED
为false
时的管理问题。
1.4.2
- 已添加优雅的 Redis 故障和
WP_REDIS_GRACEFUL
常量 - 改进的群集支持
- 已添加
redis_cache_expiration
过滤器 - 将
redis_object_cache_get
过滤器重命名为redis_object_cache_get_value
1.4.1
- 修正了与
wp_suspend_cache_addition()
有关的潜在致命错误。
1.4.0
- 添加了对igbinary的支持
- 已添加对
wp_suspend_cache_addition()
的支持。
1.3.9
- 修复了
WP_REDIS_SHARDS
在服务器列表中不显示的问题 - 修复了
WP_REDIS_SHARDS
在使用 PECL 扩展时不起作用的问题。 - 移除
WP_REDIS_SCHEME
和WP_REDIS_PATH
遗留内容
1.3.8
- 从单文件Predis版本切换到完整版
1.3.7
- 恢复到单文件Predis版本
1.3.6
- 新增对Redis Sentinel的支持
- 添加了共享支持
- 转换为PHAR版本的Predis
- 改进诊断
- 已添加
WP_REDIS_SELECTIVE_FLUSH
- 为
WP_Object_Cache::__construct()
添加了$fail_gracefully
参数。 - 始终执行
WP_REDIS_MAXTTL
- 将
$selective
和$salt
传递给redis_object_cache_flush
动作 - 不要设置
WP_CACHE_KEY_SALT
常量
1.3.5
- 在管理界面中添加了基本诊断
- 已添加
WP_REDIS_DISABLED
常量,以便在运行时禁用缓存 - 防止“插件头无效”错误
- 从
increment()
和decrement()
方法返回整数 - 防止多次实例化对象缓存
- 始终用分号分隔高速缓存键
prefix
和group
- 改进了
build_key()
的性能 - 仅在已注册回调的情况下应用
redis_object_cache_get
过滤器 - 修正了
add_or_replace()
仅在缓存键不存在时设置缓存键 - 已添加
redis_object_cache_flush
操作 - 已添加
redis_object_cache_enable
操作 - 已添加
redis_object_cache_disable
操作 - 已添加
redis_object_cache_update_dropin
操作
1.3.4
- 添加了WP-CLI支持
- 显示主机和端口,除非方案为unix
- 更新默认全局组和忽略组
- 激活、停用和卸载时执行缓存刷新
1.3.3
- 更新 Predis 至
v1.1.1
- 已添加
redis_instance()
方法 - 已添加
incr()
方法别名,以兼容 Batcache - 已添加
WP_REDIS_GLOBAL_GROUPS
和WP_REDIS_IGNORED_GROUPS
常量。 - 已添加
redis_object_cache_delete
操作 - 使用
WP_PLUGIN_DIR
和WP_CONTENT_DIR
作为后备。 - 使用群集或复制时设置密码
- 在
stats()
中显示 Redis 客户端 - 将
$cache
的可见性改为公开 - 使用旧的数组语法,以防万一
1.3.2
- 确保
WP_Object_Cache::get()
中的$result
不是false
。
1.3.1
- 固定连接问题
1.3
- 新的管理界面
- 已添加对
wp_cache_get()
的$force
和$found
参数的支持。 - 添加了对Predis集群和复制的支持
1.2.3
- UI改进
1.2.2
- 已添加
redis_object_cache_set
操作 - 已添加
redis_object_cache_get
操作和过滤器 - 防止重复的管理状态消息
- 仅在必要时加载捆绑的Predis库
- 使用
WP_CONTENT_DIR
常量加载捆绑的 Predis 库 - 更新了
stats()
方法的输出,使其与 WordPress 一致
1.2.1
- 已添加
composer.json
- 已添加停用和卸载钩子以删除
object-cache.php
- 为更好地支持
advanced-cache.php
添加了本地序列化功能 - 将捆绑的 Predis 版本更新至
1.0.3
- 将标题结构更新为语义性
1.2
- 添加了多站点支持
- 将管理菜单移至 设置 菜单下
- 修正了
get_redis_client_name()
中的 PHP 通知。
1.1.1
- 如果使用 HHVM 扩展,则调用
select()
和可选的auth()
1.1
- 增加了对HHVM Redis扩展的支持
- 添加了对PECL Redis扩展的支持
- 已添加
WP_REDIS_CLIENT
常量,用于设置首选 Redis 客户端 - 已添加
WP_REDIS_MAXTTL
常量,以强制过期缓存密钥 - 改进了
add_or_replace()
,get()
,set()
和delete()
方法 - 改进的管理员屏幕样式
- 从插件中删除所有国际化/本地化
1.0.2
- 添加了“刷新缓存”按钮
- 添加了对UNIX域套接字的支持
- 显著提高缓存对象检索性能
- 将捆绑的 Predis 库更新至
1.0.1
版本。
1.0.1
- 加载插件翻译
- 对非管理员用户隐藏全局管理员通知
- 防止直接访问
redis-cache.php
和admin-page.php
文件。 - 着色“禁用对象缓存”按钮
- 调用
Predis\Client->connect()
以避免潜在的未捕获Predis\Connection\ConnectionException
。
1.0
- 首次发布