redis缓存html6,ThinkPHP6使用redis缓存

1、安装redis扩展后运行

4c44ecf43e5f8e7d3408653ce050dd9b.png

2、修改配置目录config下面的cache.php文件

return [

'default' => 'file',

'stores' => [

// 文件缓存

'file' => [

// 驱动方式

'type' => 'file',

// 设置不同的缓存保存目录

'path' => '../runtime/file/',

],

// redis缓存

'redis' => [

// 驱动方式

'type' => 'redis',

// 服务器地址

'host' => '127.0.0.1',、

// 端口号

'port' => '6379',

// 密码

'password'=> "",

// 默认缓存时间

'timeout' => 3600

],

],];

3、上代码

很好理解  先获取redis的key,第一次查肯定是没有的,就从Mysql查询,然后设置key,再查询就读取key。

一句话:有缓存读取缓存,没有就查询数据(个人理解)

/**

* 查询商家信息

* @param $id 商家id

*/

public function getStoreInfo(Request $request)

{

$validate = new CommonValidate([

'id' => 'require|integer',

]);

if (!$validate->check($request->param())) {

return dm_json(1, $validate->getError());

}

$store_id = $request->param('id');

$redis = new Redis();

// 获取redis缓存

$store_info = $redis->get('getStoreInfo' . $store_id);

if (!$store_info) {

$store_info = StoreModel::where(['store_id' => $request->param('id')])->find()->toArray();

// 设置redis缓存 第一个参数 key,这里设置的是方法名拼接上传过来的商家id,防止重复,第二个参数就是 值

$redis->set('getStoreInfo' . $store_id, $store_info,10); //设置10秒过期 不填默认0为永久缓存

return api_json('0', ',mysql', $store_info);

} else {

return api_json('0', 'reids', $store_info);

}

}

4、查看效果

第一次访问

dee271b0efbbce95c90b82f3bb1c5400.png

cmd命令行查看所有key

b74bd57841ef1e2095bda828088cd88a.png 存到redis成功

10s内刷新页面 查询数据,读的redis缓存

8e4fd38e43909b18f0b7fca7b1c3491e.png

10s后

dee271b0efbbce95c90b82f3bb1c5400.png

本文地址:https://blog.csdn.net/qq_44718170/article/details/111831898

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值