`
jobar
  • 浏览: 349015 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

高性能web网站优化原则3——增加Expires头

 
阅读更多
Expires头
   浏览器使用cache来减少http请求并降低响应内容的大小,使得页面加载速度更快。web服务器使用Expires头来通知web客户端它可以使用当前已cache的组件直到时间超期。http规范中是这么描述的:the date/time after which the response is considered stale.由http响应发送给客户端 Expires: Thu, 19 Jun 2016 20:00:00 GMT
   如果这个是在下载页面中图片的时候返回的,那么浏览器就会在后续的页面中使用cache中的图片。从而减少了http请求数量。
 
Max-Age
   Cache-Control头是在HTTP/1.1中被引入的,目的是为了克服Expires的局限性。因为Expires指定了一个具体的日期,要求在服务器和客户端之间有严格的时钟同步要求。同时,到期日期必须经常检查,当快临近到期日期时,必须在服务器设置一个新的日期。
   另外Cache-Control使用max-age指令来指定一个组件被cache多长时间,它以秒级别来定义,如果客户端请求的cache组件小于max-age指定的秒,浏览器就用cache的版本,这样避免了额外的http请求。可以指定10年时常,例如:Cache-Control: max-age=315360000
   如果同时指定Cache-Control max-age和Expires,那么max-age会覆盖Expires

修改文件名
如果页面组件被浏览器cache的话,用户如何获取最新的组件?当设定Expires之后,如果过期时间很长,浏览器就会一直用cach的版本。这也是使用Expires可以显著的减少浏览器响应时间的原因,它直接从磁盘读取cache的组件而不会产生任何的http流量。然而,即使更新了服务器组件,用户也很可能不会使用更新过的组件,因为先前的版本仍然在cach中。为了确保用户取得最新版本的组件,在html文档中更改组件文件名是一个不错的方法。例如将example_1.0.js改为example_2.0.js
分享到:
评论

相关推荐

    高性能网站建设指南2 中文版 高性能网站建设指南(中文版)

     《高性能网站建设指南》一书介绍了如何针对网站中的Ajax、CSS、JavaScript、Flash和图片进行性能优化。每个性能规则都提供了示例,在本书的配套网站上可以找到代码片段。这些规则包括:  •减少HTTP请求 •使用...

    高性能网站建设指南1

     《高性能网站建设指南》一书介绍了如何针对网站中的Ajax、CSS、JavaScript、Flash和图片进行性能优化。每个性能规则都提供了示例,在本书的配套网站上可以找到代码片段。这些规则包括:  •减少HTTP请求 •使用...

    开涛高可用高并发-亿级流量核心技术

    18 使用OpenResty开发高性能Web应用 360 18.1 OpenResty简介 361 18.1.1 Nginx优点 361 18.1.2 Lua的优点 361 18.1.3 什么是ngx_lua 361 18.1.4 开发环境 362 18.1.5 OpenResty生态 362 18.1.6 场景 362 18.2 基于...

    高伸缩的网站的设计

    这种配置的优势在于能够实现高性能的负载均衡,并且支持动态内容的快速生成。此外,通过这种方式还能实现站点级别的隔离,例如将不同的子域名(如`bbs.example.com`和`blog.example.com`)分配给不同的服务器集群...

    Nginx 应用技术指南

    Nginx是一款轻量级、高性能的Web服务器与反向代理服务器,同时也支持IMAP/POP3/SMTP协议。最初由Igor Sysoev为俄罗斯的Rambler.ru站点开发,并在该站点上成功运行多年。Nginx以其高稳定性、丰富的功能集、简单的配置...

    nginx入门指南

    Nginx是一款开源的Web服务器软件,以其高性能、稳定性、丰富的功能集以及较低的内存消耗而闻名。它最初由Igor Sysoev开发,旨在为高流量的网站提供可靠的解决方案。Nginx不仅可以作为HTTP服务器使用,还可以作为反向...

    javaweb过滤器

    通过以上内容的学习,我们可以看出过滤器在JavaWeb开发中扮演着至关重要的角色,不仅能够提升应用程序的安全性,还能优化用户体验。同时,结合装饰模式的应用也能让过滤器的功能更加灵活多变,满足不同场景下的需求...

    jquery实现换肤带cookie

    jQuery是一个轻量级、高性能的JavaScript库,它简化了DOM操作、事件处理和动画制作等任务,使得实现这种功能变得相对容易。 首先,我们需要理解CSS(层叠样式表)在换肤中的作用。CSS控制着网页的布局和外观,包括...

Global site tag (gtag.js) - Google Analytics