8 缓存实现,减少数据库访问
2021/7/11 2:06:15
本文主要是介绍8 缓存实现,减少数据库访问,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1 页面缓存
1 添加自定义Key类
public class GoodsKey extends BasePrefix { private GoodsKey(int expireSecondes, String prefix) { super(expireSecondes, prefix); } public static GoodsKey getGoodsList = new GoodsKey(60000, "goodslist"); public static GoodsKey getGoodsDetail = new GoodsKey(60000, "goodsdetail");}
2 修改Controller
// @RequestMapping("/to_list") @RequestMapping(value="/to_list", produces="text/html") @ResponseBody public String toLogin(Model model, MiaoshaUser user, HttpServletRequest request, HttpServletResponse response){ model.addAttribute("user", user); // 查询商品列表 List<GoodsVo> goodsList = goodsService.listGoodsVo(); model.addAttribute("goodsList", goodsList);// return "goods_list"; // 取缓存 String html = redisService.get(GoodsKey.getGoodsList, "", String.class); if(!StringUtils.isEmpty(html)){ return html; } // 手动渲染 SpringWebContext ctx = new SpringWebContext(request, response, request.getServletContext(), request.getLocale(), model.asMap(), applicationContext); html = thymeleafViewResolver.getTemplateEngine().process("goods_list", ctx); if(!StringUtils.isEmpty(html)){ redisService.set(GoodsKey.getGoodsList, "", html); } return html; }
2 对象缓存
# 测试 java -jar miaosha.jar # 如果遇到tomcat端口已经被占用 了,那就去将占用改端口的pid给kill掉 # 具体方法: ps -ef | grep miaosha.jar # 然后重新部署项目,然后测试 java -jar miaosha.jar 2>&1 rm -f *.jtl ./apache-jmeter-5.4.1/bin/jmeter.sh -n -t miaosha_to_list_add_redis_5000_10.jmx -l miaosha_to_list_add_redis_5000_10.jtl
这篇关于8 缓存实现,减少数据库访问的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-11有哪些好用的家政团队管理工具?
- 2025-01-11营销人必看的GTM五个指标
- 2025-01-11办公软件在直播电商前期筹划中的应用与推荐
- 2025-01-11提升组织效率:上级管理者如何优化跨部门任务分配
- 2025-01-11酒店精细化运营背后的协同工具支持
- 2025-01-11跨境电商选品全攻略:工具使用、市场数据与选品策略
- 2025-01-11数据驱动酒店管理:在线工具的核心价值解析
- 2025-01-11cursor试用出现:Too many free trial accounts used on this machine 的解决方法
- 2025-01-11百万架构师第十四课:源码分析:Spring 源码分析:深入分析IOC那些鲜为人知的细节|JavaGuide
- 2025-01-11不得不了解的高效AI办公工具API