美文网首页
页面优化技术

页面优化技术

作者: totohui | 来源:发表于2018-05-09 10:57 被阅读0次

    1. 页面缓存+URL缓存+对象缓存

    1.1页面缓存

    例如缓存商品列表页面,先从redis缓存里面拿取页面,如果没取到再进行手动渲染

    @RequestMapping(value="/to_list", produces="text/html")

    @ResponseBody

    public String list(HttpServletRequest request, HttpServletResponse response, Model model,MiaoshaUser user)

    {

    model.addAttribute("user", user);

    //取缓存

    String html = redisService.get(GoodsKey.getGoodsList, "", String.class); if(!StringUtils.isEmpty(html)) {

        return html;

    }

    List goodsList = goodsService.listGoodsVo();

    model.addAttribute("goodsList", goodsList);

    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;

    }

    1.2 对象缓存

    比如登录的时候,判断用户是否存在,可以将返回的user进行缓存。不过这样如果用户更改密码的时候,需要对缓存进行处理,可以删掉这个对象缓存,同时修改session(这里的session是存在redis里面的,分布式session)里面的user,如果删除就会影响登录。

    redisService.delete(MiaoshaUserKey.getById, "" + id); user.setPassword(toBeUpdate.getPassword()); redisService.set(MiaoshaUserKey.token, token, user);

    2.页面静态化,前后端分离

    静态页面被浏览器缓存下来,和服务器通信的只有接口。

    3.静态资源优化

    3.CDN优化

    相关文章

      网友评论

          本文标题:页面优化技术

          本文链接:https://www.haomeiwen.com/subject/kcijlftx.html