说明

辉哥演示站和本地使用的对象缓存都是redis,刚好手上有Redis Object Cache Pro插件,目前大多数用户都是用的是官方推荐的基础配置,并没有使用高性能配置(官方的说法是在毫秒内优化高流量站点),刚好辉哥今天研究了一下该插件如何使用高性能配置,下面上教程!

官方高性能配置:https://objectcache.pro/docs/configuration#high-performance

环境

PS:以下是辉哥测试环境使用的环境,并以该环境为基础进行编译

系统:Centos

宝塔面板

PHP:8.0

教程

1、安装libzstd-devel

#该命令是centos命令,使用其他系统请自己百度搜索

yum -y install libzstd-devel

**#Debian:
在/etc/apt/sources.list 中加入:

deb http://us.archive.ubuntu.com/ubuntu/ precise multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ precise multiverse
deb http://us.archive.ubuntu.com/ubuntu/ precise-updates multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ precise-updates multiverse
deb http://archive.ubuntu.com/ubuntu xenial main restricted universe multiverse

然后执行:

apt-get update
apt-get install libzstd-dev

2、为PHP编译LZF扩展

#创建并进入目录
mkdir -p /www/server/lzf && cd $_

#下载LZF
wget https://pecl.php.net/get/LZF-1.7.0.tgz

#解压
tar xf LZF-1.7.0.tgz

#进入该目录
cd LZF-1.7.0

#phpize,74则为PHP7.4,示例PHP8.1,该地方填81
/www/server/php/74/bin/phpize

#配置php目录
./configure --with-php-config=/www/server/php/74/bin/php-config 

#编译并安装
sudo make && make install 

#以上命令只能编译一次,如果想编译其他PHP版本,请先执行下面的删除命令
rm -rf /www/server/lzf/LZF-1.7.0

然后重复上面解压往后的操作即可,配置PHP目录时,填写对应的PHP版本目录即可

3、安装扩展

3.1、在宝塔面板安装igbinaryzstd扩展

3.2、PHP.ini中加入刚才编译的lzf扩展

#在编译后系统会自动将lzf.so文件放到对应的php扩展目录,所以直接引用即可
extension = lzf.so

3.3、此时你以为按照官方文档安装该两个扩展后就能用了?如上图,辉哥已经安装了两个扩展并重启了PHP,下图为Redis Object Cache Pro插件页面提示,其翻译过来是:初始化对象缓存失败:PhpRedis未编译Zstandard压缩支持,请参阅有关启用压缩的更多信息:https://objectcache.pro/docs/data-encoding/,所以流程还得往下走

4、编译Redis扩展

#下载辉哥改过的redis安装脚本
curl -o /www/server/panel/install/redis.sh https://www.haah.net/script/redis.sh

#如果安装了redis扩展先卸载

#卸载命令,74则为PHP7.4,示例PHP8.1,该地方填81
sh /www/server/panel/install/redis.sh uninstall 80

#安装命令,74则为PHP7.4,示例PHP8.1,该地方填81
sh /www/server/panel/install/redis.sh install 80

5、重启PHP

5.1、例如辉哥用的是PHP7.4,宝塔的目录则为:/www/server/php/74/lib/php/extensions/no-debug-non-zts-20190902,编译后重启PHP,打开phpinfo,搜索Redis,下面是使用我编译的扩展前后的截图,

PS:PHP8.1与7.4目录类似
已使用

5.2、此时刷新Redis Object Cache Pro控制台则会看到能正常使用了

6、wprdpress配置代码

wp-config.php中加入如下代码(token是授权码,需要购买或者自己搜寻):

define('WP_REDIS_CONFIG', [
'token' => '...',
    'host' => '127.0.0.1',
    'port' => 6379,
    'database' => 0, // change for each site
    'timeout' => 1.0,
    'read_timeout' => 1.0,
    'async_flush' => true,
    'compression' => 'zstd',
    'serializer' => 'igbinary',
    'split_alloptions' => true,
    'prefetch' => true,
    'debug' => false,
    'save_commands' => false,
]);

define('WP_REDIS_DISABLED', getenv('WP_REDIS_DISABLED') ?: false);
End


最后修改:2023 年 04 月 15 日
如果觉得我的文章对你有用,请随意赞赏