最近在开发运营一个微信小程序时,用到查询接口,虽然在宝塔PHP中启用了PHP缓存,但接口评级在微信分析中响应比较慢。
为了提高接口速度,在引用redis前后做一次接口查询对比。
在启用redis前:
在启用php缓存,命中后是100ms
下面开始安装配置redis
1.在宝塔面板上直接安装redis
2.php安装redis扩展
3.ThinkCMF框架代码配置redis链接。
在/data/config/
下,增加缓存配置cache.php
文件。代码如下
<?php
return [
// 缓存配置为复合类型
'type' => 'complex',
'default' => [
'type' => 'file',
// 全局缓存有效期(0为永久有效)
'expire'=> 0,
// 缓存前缀
'prefix'=> 'think',
// 缓存目录
'path' => '../data/runtime/cache/',
],
'redis' => [
'type' => 'redis',
'host' => '127.0.0.1',
// 全局缓存有效期(0为永久有效)
'expire'=> 3600,
'port' => '6379',
// 缓存前缀
'prefix'=> 'think',
],
// 添加更多的缓存类型设置
];
查看redis数据库,在写入数据前。
往redis里写入要缓存的数据。
写入redis缓存代码:
use think\cache\driver\Redis;
$redis = new Redis();
....
$redis->set('AllPortIndex',$data);
从缓存取数据
use think\cache\driver\Redis;
$redis = new Redis();
....
$data = $redis->get('AllPortIndex');
接口redis查询后
直接响应在172ms ,比之前400ms,快了很多。
有缓存后,46ms
接入微信小程序接口