返回顶部
首页 > 资讯 > CMS >使用wordpress插件Redis Object Cache进行多站缓存配置,加速网页访问
  • 845
分享到

使用wordpress插件Redis Object Cache进行多站缓存配置,加速网页访问

redis缓存数据库 2023-09-02 21:09:08 845人浏览 独家记忆
摘要

Redis Object Cache Pro 是 WordPress 上面一款数据库 缓存插件 ,使用此插件它可以将数据库中的常用值缓存到内存当中,对于一些磁盘速度较慢的服务器来说,使用内存进行数据缓存的效果还是挺明显的。  以我个人测试站

Redis Object Cache Pro 是 WordPress 上面一款数据库 缓存插件 ,使用此插件它可以将数据库中的常用值缓存到内存当中,对于一些磁盘速度较慢的服务器来说,使用内存进行数据缓存的效果还是挺明显的。 

以我个人测试站点:坐地读书网 为例,

没有装插件之前网站首页的sql查询数为85,装插件后查询数为40,效果显著提升。

1、安装插件

安装插件很简单,直接在网站后台搜索:Redis Object Cache 即可,这里要注意的是如果你的服务器之前有网站已经安装了,现在给服务器的另一个网站安装时会出现网站无法访问的问题,这是因为redis没有重新配置采取默认安装的原因,下文会讲到。

2、多站点的配置

wp-config.PHP配置文件是我们经常修改的一个文件。本站发过很多再wp-config.php文件中添加或删除各种功能的代码。

此种方式适合已经创建的站点,不适合再操作数据库的情况。

此方式来源于官方文档:

https://github.com/rhubarbgroup/redis-cache/wiki/Connection-Parameters

默认情况下,对象缓存插件将通过 tcp 连接到 Redis 127.0.0.1:6379并选择 database 0库。

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

define( 'WP_REDIS_HOST', '127.0.0.1' );define( 'WP_REDIS_PORT', 6379 );// define( 'WP_REDIS_PASSWord', 'secret' );define( 'WP_REDIS_TIMEOUT', 1 );define( 'WP_REDIS_READ_TIMEOUT', 1 );// change the database for each site to avoid cache collisionsdefine( 'WP_REDIS_DATABASE', 0 );// supported clients: `phpredis`, `credis`, `predis` and `hhvm`// define( 'WP_REDIS_CLIENT', 'phpredis' );// automatically delete cache keys after 7 days// define( 'WP_REDIS_MAXTTL', 60 * 60 * 24 * 7 );// bypass the object cache, useful for debugging// define( 'WP_REDIS_DISABLED', true );

其中define( 'WP_REDIS_DATABASE’, 0 );这里后面的数值0就是更改redis库的参数。redis默认是16个库,各个站设为不同值即可,比如改成1或者2、3、4、5、6等等。

其他设置项的解释

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 服务器进行身份验证。要使用 Redis 6 的 ACL,请将其设置为['username', 'password']数组(需要 PhpRedis 5.3+)。WP_REDIS_TIMEOUT(默认值:5)在失败之前尝试初始连接到 Redis 服务器的时间(以秒为单位)(允许几分之一秒)。WP_REDIS_READ_TIMEOUT(默认值:5)在失败之前尝试从 Redis 服务器读取的时间(以秒为单位)(允许几分之一秒)。WP_REDIS_RETRY_INTERVAL(默认:未设置)重试失败的连接尝试的时间(以毫秒为单位)。

3、更改插件的配置文件

此插件在服务器上得文件目录为/wp-content/plugins/redis-cache/

在其includes目录下有个object-cache.php文件,大致在546行,更改database值即可。

protected function build_parameters() {$parameters = ['scheme' => 'tcp','host' => '127.0.0.1','port' => 6379,'database' => 0,'timeout' => 1,'read_timeout' => 1,'retry_interval' => null,'persistent' => false,];$settings = ['scheme','host','port','path','password','database','timeout','read_timeout','retry_interval',];foreach ( $settings as $setting ) {$constant = sprintf( 'WP_REDIS_%s', strtoupper( $setting ) );if ( defined( $constant ) ) {$parameters[ $setting ] = constant( $constant );}}if ( isset( $parameters[ 'password' ] ) && $parameters[ 'password' ] === '' ) {unset( $parameters[ 'password' ] );}return $parameters;}

保存文件后重新启动Redis Object Cache缓存插件。

最多可以配置16个database,只要database不同即可,也就不会出现前文提到的不同网站缓存时导致网站无法访问的问题。

来源地址:https://blog.csdn.net/liuwu0720/article/details/128251245

--结束END--

本文标题: 使用wordpress插件Redis Object Cache进行多站缓存配置,加速网页访问

本文链接: https://lsjlt.com/news/391475.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作