devgeniem/wp-redis-object-cache-dropin

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

安装次数: 32,015

依赖项: 0

建议者: 0

安全: 0

星标: 8

关注者: 6

分支: 148

开放问题: 4

类型:wordpress-dropin

1.6.1 2023-02-24 12:00 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 devgeniem/wp-redis-object-cache-dropin

连接参数

默认情况下,对象缓存插件将通过 TCP 在 127.0.0.1:6379 连接到 Redis,并选择数据库 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',
] );

维护者

@onnimonni

@villepietarinen