zoukankan      html  css  js  c++  java
  • http缓存的方案总结

    总结以下http缓存的几个方案

    md5/hash缓存

    不缓存主入口html,为静态文件添加MD5或者hash标识,解决浏览器无法跳过缓存过期时间主动感知文件变化的问题。

    原理是:

    每次更新的资源,资源名也更新为资源本名+hash/md5码,而入口文件不设置缓存,每次请求都是最新,同时在入口文件更新资源名。因为资源名不同,浏览器会去请求新的,这样就保证了是最新资源。同时,每一个资源(除了入口文件,入口文件需要引用其他套接了hash/md5值得资源)都可以设置很长的过期时间,不会影响资源的更新。

    通过这种方法,我们就可以从根本上解决过期时间没到浏览器无法主动请求服务器的问题。

    webpack提供了webpack-md5-hash插件,可以帮助开发者在项目发布时自动修改文件标识。

    设置过期时间+过期时询问是否更新

    网上挺多文章了,不再转述

    推荐一篇http缓存详解,http缓存推荐方案

    增加CDN(content delivery network 内容分发网络)缓存

    依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。CDN的关键技术主要有内容存储和分发技术(较为官方的说明)。
    ----http缓存详解,http缓存推荐方案

    加上cdn也可以有效减少请求时间和服务器压力

  • 相关阅读:
    14.Java基础_函数/函数重载/参数传递
    98. 验证二叉搜索树(深搜)
    13.Java基础_数组内存图
    12Java基础_数组定义格式/动态初始化/静态初始化
    计算几何基础
    11.Java基础_IDEA常用快捷键
    Add Two Numbers
    Two Sum
    登录界面id属性的使用
    系统查看
  • 原文地址:https://www.cnblogs.com/riwang/p/12499824.html
Copyright © 2011-2022 走看看