alexsancho/wp-redis-object-cache

WordPress 持久对象缓存后端,由 Redis 提供。支持 Predis、PhpRedis、HHVM、复制和集群。

此包的官方仓库似乎已不存在,因此该包已被冻结。

v1.0.0 2018-02-09 20:11 UTC

This package is auto-updated.

Last update: 2021-10-12 21:41:26 UTC


README

由 Redis 提供的持久对象缓存后端。支持 PredisPhpRedis (PECL)HHVM、复制、集群和 WP-CLI

从 Eric Mann 和 Erick Hitter 的 Redis Object Cache 分支。

还从 Till Krüss 的 Redis Cache 分支再次分支。

我们只想有 object-cache.php 插件文件,没有其他文件。

安装

$ composer require alexsancho/wp-redis-object-cache-dropin

连接参数

默认情况下,对象缓存插件将连接到 Redis,地址为 127.0.0.1:6379,并选择数据库 0

要调整连接参数,请在您的 wp-config.php 文件中定义以下任何常量。

  • WP_REDIS_CLIENT (默认: 未设置)

    指定用于与 Redis 通信的客户端。支持 hhvmpeclpredis

  • WP_REDIS_SCHEME (默认: tcp)

    指定用于与 Redis 实例通信的协议。客户端内部使用与指定连接方案关联的连接类。支持 tcp (TCP/IP)、unix (UNIX 域套接字)、tls (传输层安全) 或 http (通过 Webdis 的 HTTP 协议)。

  • WP_REDIS_HOST (默认: 127.0.0.1)

    目标服务器的 IP 或主机名。当使用 UNIX 域套接字连接到 Redis 时,此值将被忽略。

  • WP_REDIS_PORT (默认: 6379)

    目标服务器的 TCP/IP 端口。当使用 UNIX 域套接字连接到 Redis 时,此值将被忽略。

  • WP_REDIS_PATH (默认: 未设置)

    用于通过 UNIX 域套接字连接到 Redis 的 UNIX 域套接字文件路径。

  • WP_REDIS_DATABASE (默认: 0)

    接受一个数值,用于使用 SELECT 命令自动选择一个逻辑数据库。

  • WP_REDIS_PASSWORD (默认: 未设置)

    接受一个值,用于使用 AUTH 命令与受密码保护的 Redis 服务器进行身份验证。

配置参数

要调整配置,请在您的 wp-config.php 文件中定义以下任何常量。

  • WP_CACHE_KEY_SALT (默认: 未设置)

    设置所有缓存键的前缀。在多个安装共享相同的 wp-config.php$table_prefix 的设置中非常有用,以保证缓存键的唯一性。

  • WP_REDIS_MAXTTL (默认: 未设置)

    设置具有 0 过期时间的缓存键的最大生存时间(以秒为单位)。

  • WP_REDIS_GLOBAL_GROUPS(默认值:['blog-details', 'blog-id-cache', 'blog-lookup', 'global-posts', 'networks', 'rss', 'sites', 'site-details', 'site-lookup', 'site-options', 'site-transient', 'users', 'useremail', 'userlogins', 'usermeta', 'user_meta', 'userslugs']

    设置不应使用博客ID前缀的网络范围缓存组列表。(仅限多站点)

  • WP_REDIS_IGNORED_GROUPS(默认值:['counts', 'plugins']

    设置不应在Redis中缓存的缓存组。

复制和集群

要使用复制和集群,请确保您的服务器正在运行PHP7,您的设置正在使用Predis连接到Redis,并且您已查阅了Predis文档

对于复制,使用WP_REDIS_SERVERS常量;对于集群,使用WP_REDIS_CLUSTER常量。您可以使用命名数组或URI字符串来指定参数。

对于身份验证,使用WP_REDIS_PASSWORD常量。

主从复制

define( 'WP_REDIS_SERVERS', [
    'tcp://127.0.0.1:6379?database=15&alias=master',
    'tcp://127.0.0.2:6379?database=15&alias=slave-01',
] );

通过客户端分片实现集群

define( 'WP_REDIS_CLUSTER', [
    'tcp://127.0.0.1:6379?database=15&alias=node-01',
    'tcp://127.0.0.2:6379?database=15&alias=node-02',
] );