当我们进行java开发时,当遇到页面数据过多或者复杂,会有很多慢sql,此时除了优化sql外,还可以通过缓存的方式来处理:

有如下方案:

1.整个页面做缓存,key为页数,value为整个页面的数据

这个问题很明显,当我们页面的数据被更新时,数据就错了,所以此方法不可行

2.整个页面做缓存,key为页数,value为整个页面的数据,此外,当存在新增数据的时候,可以判断是第几页的数据,然后将此页以及后面页面的缓存都删除,当更新数据的时候,将此页缓存删除,当删除的时候,和新增类似,也是将相关页面的缓存删除

这个问题是,当操作数据的时候,改动过大,颗粒度控制不够细

3.我们不用整个页面做缓存,用每条数据做缓存,当我们查询出每页数据的时候,把每条数据的id(唯一标识)作为key,将一条数据作为value,当我们再次查询的时候,只查询分页数据中的id(大概率相对于查询整个数据速度会快很多),然后根据这个id去查询缓存,把整个页面的数据封装好返回给前端即可;这样新增或者删除缓存都不受影响,当更新数据的时候,只需要删除对应一条的缓存即可

这样改动最小,但是小概率会存在查询整个页面的id时间也很长的情况,这样就优先做sql优化比较好

分页数据做缓存的思考相关推荐

  1. 在sql当中为了让数据做缓存做with as的操作

    今天看别人的代码,突然发现之前理解的sql的with as的用法有新的理解. 之前理解的with as只是想着做单表的union all 操作时才使用,今天发现在可以使用逗号做分割,做缓存不同的表数据 ...

  2. 19.2、Javaweb案例_Servlet代码抽取优化分页数据redis缓存优化分页数据展示

    优化Servlet 目的 减少Servlet的数量,现在是一个功能一个Servlet,将其优化为一个模块一个Servlet,相当于在数据库中一张表对应一个Servlet,在Servlet中提供不同的方 ...

  3. layui 数据表格 分页 搜索 checkbox 缓存选中项数据

    在做数据表格的时候遇到了很多坑, 今天整理一下方便以后使用. 主要功能是使用数据表格, 做分页,做搜索,  还有checkbox,  支持全选. 当选中一些数据的时候, 数据切换页面数据在切换回来后, ...

  4. layui 数据表格+分页+搜索+checkbox+缓存选中项数据

    在做数据表格的时候遇到了很多坑, 今天整理一下方便以后使用. 主要功能是使用数据表格, 做分页,做搜索,  还有checkbox,  支持全选. 当选中一些数据的时候, 数据切换页面数据在切换回来后, ...

  5. java 缓存分页_基于redis做缓存分页

    在实际业务中我们会将一些热数据缓存到redis里面,这时候数据量比较大的话,我们就要对这些热数据进行分页,分页的方式有2种: 第一:从redis拿出所有数据后,再做内存分页(不推荐),热点数据小的时候 ...

  6. 西部数据在磁盘里加NAND却不用做缓存?

    据行业预测到2025年,单盘容量可升至100TB级别,届时会联合使用HAMR/EAMR.BPMR等技术,可想而知,随着盘片上的结构越发精细,所需记录的元数据容量也会增加,而且对伺服系统处理速度也提出了 ...

  7. 超级干货:关于数据中台的深度思考与总结

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 来源 | http://dwz.date/aHTb 本文 ...

  8. [NewLife.XCode]数据层缓存(网站性能翻10倍)

    NewLife.XCode是一个有10多年历史的开源数据中间件,支持nfx/netcore,由新生命团队(2002~2019)开发完成并维护至今,以下简称XCode. 整个系列教程会大量结合示例代码和 ...

  9. 关于数据中台建设之思考

    [与数据同行]已开通综合.数据仓库.数据分析.产品经理.数据治理及机器学习六大专业群,加微信号frank61822702 为好友后入群.新开招聘交流群,请关注[与数据同行]公众号,后台回复" ...

最新文章

  1. 软件重构过程中的思维转换: 遗留代码如何变废为宝
  2. telnet WIN7 不回显的解决办法
  3. AWS 基础服务学习
  4. 配置FTP服务2(vsftpd 配置虚拟账号)
  5. 欢乐纪中某B组赛【2019.1.25】
  6. 关于几本模拟IC设计书
  7. MFC如何使控件大小随着对话框大小自动调整
  8. html:(30):继承和特殊性
  9. 移动端返回上一页实现方法
  10. oracle sap mas,MAS 移动业务整合系统
  11. c# npoi 公式不计算_高中数学最不容易,最难计算,全高中数学所有基础性质公式归纳...
  12. DSB2017第一名论文理解: 3D Deep Leaky Noisy-or Network(一)
  13. http协议的状态码——400,401,403,404,500,502,503,301,302等常见网页错误代码
  14. visual svn server安装失败
  15. 【IT项目管理】第5章 保障项目进度
  16. 为什么恢复后的文件打不开?U盘数据恢复常见问题
  17. Win10 将 Bookmarks 的书签恢复到 Chrome
  18. ffmpeg截取视频指定帧方法
  19. 真相了,原来程序员不喜欢领导改需求是这样子的!
  20. 安装UltraISO后,删除 Win10 电脑中多出的“CD驱动器”盘符

热门文章

  1. 百度地图根据经纬度计算距离php,详解js根据百度地图提供经纬度计算两点距离...
  2. java 将字符串数组清空_在Java中如何将字符串集转换为字符串数组
  3. 各CCFA类核心期刊的信息汇总与评价总结(科技领域)
  4. php安装mcrypt扩展
  5. 机器人与matlab—Robotics Toolbox—01空间位姿描述
  6. 电影数据分析练习——ppt报告
  7. e66java存档,1000d
  8. R 语言 因素分析(Factor Analysis, FA)
  9. 一加手机怎么导出照片_换手机照片、通讯录备份太麻烦,一加手机轻松解决
  10. JavaFX桌面应用开发-GridPane(网格布局)