当前位置:   article > 正文

ThinkPHP6使用redis缓存_tp6怎么启动redis当缓存

tp6怎么启动redis当缓存

php安装redis扩展

redis命令

tp6缓存配置

1、安装redis扩展后运行

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

  1. return [
  2. 'default' => 'file',
  3. 'stores' => [
  4. // 文件缓存
  5. 'file' => [
  6. // 驱动方式
  7. 'type' => 'file',
  8. // 设置不同的缓存保存目录
  9. 'path' => '../runtime/file/',
  10. ],
  11. // redis缓存
  12. 'redis' => [
  13. // 驱动方式
  14. 'type' => 'redis',
  15. // 服务器地址
  16. 'host' => '127.0.0.1',
  17. // 端口号
  18. 'port' => '6379',
  19. // 密码
  20. 'password'=> "",
  21. // 默认缓存时间
  22. 'timeout' => 3600
  23. ],
  24. ],];

3、上代码

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

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

  1. /**
  2. * 查询商家信息
  3. * @param $id 商家id
  4. */
  5. public function getStoreInfo(Request $request)
  6. {
  7. $validate = new CommonValidate([
  8. 'id' => 'require|integer',
  9. ]);
  10. if (!$validate->check($request->param())) {
  11. return api_json(1, $validate->getError());
  12. }
  13. $store_id = $request->param('id');
  14. $redis = new Redis();
  15. // 获取redis缓存
  16. $store_info = $redis->get('getStoreInfo' . $store_id);
  17. if (!$store_info) {
  18. $store_info = StoreModel::where(['store_id' => $request->param('id')])->find()->toArray();
  19. // 设置redis缓存 第一个参数 key,这里设置的是方法名拼接上传过来的商家id,防止重复,第二个参数就是 值
  20. $redis->set('getStoreInfo' . $store_id, $store_info,10); //设置10秒过期 不填默认0为永久缓存
  21. return api_json('0', 'mysql', $store_info);
  22. } else {
  23. return api_json('0', 'reids', $store_info);
  24. }
  25. }

4、查看效果

第一次访问

cmd命令行查看所有key 

 存到redis成功

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

10s后

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/719092
推荐阅读
相关标签
  

闽ICP备14008679号