thinkPHP的数据缓存问题
来源:互联网 发布:电脑网络受限制怎么办 编辑:程序博客网 时间:2024/05/29 03:18
昨天遇到的一个问题,即用两个浏览器登录不同的角色,然后请求同一个接口(根据角色不同给了不同的查询条件)进行数据查询,发现角色一查询数据之后,角色二去查数据时,拿到的是角色一查询过的数据。打印session没有串,查询条件也不一样,但问题是角色一查询的时候执行了查询语句,角色二查询的时候却没有执行查询语句。
一直很好奇角色二是如何没有通过执行查询语句而拿到数据,隐约觉得可能与缓存有关。于是把thinkPHP框架(3.12版)中有关于生成缓存的配置都关闭了,还是没有起到作用。(关于ThinkPHP关闭各种缓存的方法,大家可看看这个博客:http://blog.csdn.net/lovezbs/article/details/46492861)
最后让同事看的时候,惊奇的发现,不知哪位大神把查询的数据放在了S缓存里,第二次查询的时候就绕过了查询语句,直接从缓存数据里取的,这个坑埋的深呐!
最后的处理方式是,第一次查询的时候除了把数据放进S缓存里以外,还把用户信息也放进去,然后第二次查询的时候就比对一下当前用户与S缓存里的用户是否是同一个人,是的话就直接取缓存里的数据,不是的话就重新查询。
阅读全文
0 0
- thinkPHP的数据缓存问题
- thinkphp 5缓存 数据状态 的切换
- ThinkPHP数据缓存
- ThinkPHP:数据缓存笔记
- ThinkPhp数据缓存技术
- ThinkPHP缓存数据
- thinkphp 缓存数据 S方法
- 【学习笔记】thinkphp 生成静态缓存的雪崩问题
- oracle数据的缓存问题
- thinkphp的静态缓存使用方法
- thinkphp的静态缓存使用方法
- Thinkphp - 缓存的使用 (Memcache)
- thinkphp的调试缓存安全
- Thinkphp - 缓存的使用 (Memcache)
- thinkphp 缓存的灵活使用
- THINKPHP 清空数据缓存方法
- Thinkphp部署模式下缓存问题
- ThinkPHP与Angular使用POST方法传递数据的问题
- 简单了解webpack项目构建工具并初步使用
- MFC:“未定义标识符”问题
- debian NFS服务器的启动和设定
- POJ_3067_树状数组
- Java OOM 异常分析
- thinkPHP的数据缓存问题
- oracle-11g忘记sys,system密码的处理方法
- 用kotlin写Gson解析遇到failed to invoke 问题
- windows上安装jdk8后如何切回jdk7
- java 3年经验 你需要会什么
- Linux环境搭建:CentOS7安装Oracle
- gradle配置Javadoc
- android stdio链接不到手机时
- 欢迎使用CSDN-markdown编辑器