【问题标题】:What does mod_pagespeed do?mod_pagespeed 是做什么的?
【发布时间】:2011-06-20 11:15:34
【问题描述】:

这是参考:

http://googlecode.blogspot.com/2011/01/go-daddy-makes-web-faster-by-enabling.html

但我仍然不知道它是如何在后台动态优化页面的。

还有一件事我不明白为什么“缓存的后续请求很慢”?

【问题讨论】:

  • 值得一游的东西来研究 mod_pagespeed :code.google.com/p/modpagespeed
  • 循环往返。这将回答您更新的问题。
  • @miki725 谢谢,但可以举个例子...

标签: performance optimization mod-pagespeed


【解决方案1】:

PageSpeed mod_pagespeed是Apache服务器的一个模块,就像一个插件,由于Apache不同于IIS,它不能安装在IIS服务器上。

至于它的作用,它做了很多事情:

  • 缩小(删除空格、cmets 等)或换句话说压缩外部 CSS 和 JavaScript
  • 除了缩小 JS 之外,它还将多个外部 JS 文件合并为一个 JS 文件,从而减少 http 请求或往返次数,从而加快页面加载速度
  • 优化文件的缓存。每个http头都有一个缓存信息,或者换句话说,浏览器应该保留资源多长时间,mod_pagespeed优化这个数字
  • 对新的 JS 文件使用 URL 指纹识别的思想。基本上,当 mod_pagespeed 优化并将多个 JS 文件合并为一个文件时,这个临时文件存储在服务器上的某个位置,但是,它的文件名是使用 MD5 等校验和算法从 JS 文件的内容生成的。这允许做的是 mod_pagespeed 告诉浏览器将 JS 文件存储很长时间(设置很长的缓存时间),但是一旦开发人员即使在其中一个 JS 文件中更改内容,因为校验和在所有文件中,mod_pagespeed 将生成一个新的临时 JS 文件,该文件的 URL 与旧文件不同。所以,当保存了旧的组合JS文件的用户会尝试重新加载页面时,由于新的JS文件的URL是新的,它会强制浏览器重新下载。所以本质上这是进行缓存控制的一种方式。
  • 缩小 HTML

所以这个模块很酷。它可以真正加快网站的性能。然而,一个缺点是它在服务器上使用了更多的 CPU 资源。

希望这会有所帮助。

【讨论】:

  • 迂腐提示:为了获得更好的效果,它所做的任何事情都不能手工完成。这不是一个神奇的“添加这个,你的所有网站都会更快”的工具。它处理我们都应该做的通常被忽略/忘记的事情。
  • @ircmaxell 完全同意。我想这只是让事情变得更加自动化。像 URL 指纹识别手动操作会更复杂。我的意思是每次更改内容时都更改文件名会有点痛苦。
  • @ircmaxell 在一个完美的世界里,你可以完全控制加载的内容,但通常你没有。例如,如果您使用 Wordpress 插件,它们通常会加载自己的脚本,这些脚本往往是未缩小且繁重的。除此之外,我同意,您可以手动完成大部分工作并保留这些 CPU 资源。
  • 注意:IISpeed 是 mod_pagespeed 的一个端口,现在已经存在几年了,用于 Microsoft IIS:iispeed.com
【解决方案2】:

根据您的图表,左图不代表缓存请求的加载时间。这是请求的数量!而且,正如预期的那样,对服务器的请求数量减少了,缓存的请求数量也减少了。

但是我没有看到加载时间发生变化。根据最近的这项研究"What is PageSpeed Module?",加载时间最多可以减少 90%!

此外,我从您的图片中获得的数字与他们的数字非常匹配: - 请求数量减少约 50%; - 有效载荷大小减少了约 80%。

上面的答案中的绅士描述了它的工作原理,有关更多信息,您可以查看Google DocumentationBoost Business Friday的链接。

【讨论】:

    猜你喜欢
    • 2012-02-25
    • 2018-02-14
    • 2016-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-16
    • 2011-11-01
    • 2010-11-24
    相关资源
    最近更新 更多