Sat*_*ash 7 performance firebug pagespeed amazon-cloudfront
我正在使用CloudFront,很多时候我看到等待时间和接收时间太高了.
根据Firebug文件,等待时间和接收时间意味着:
等待 - 等待服务器的响应
接收 - /(来自缓存)从服务器读取整个响应所需的时间(和/或从缓存中读取所需的时间)
我不明白为什么需要这么多时间以及我可以做些什么来减少时间?

你可以做很多事情。
Expires,Cache-control,ETag等。gzip资产的 ped 版本通过WebpageTest.org运行您的网站并查看所有建议。
通过YSlow运行您的网站并查看所有建议
这意味着浏览器正在等待服务器处理请求并返回响应。
当该时间很长时,通常意味着您的服务器端脚本需要很长时间才能处理请求。
服务器端脚本缓慢的原因有很多,例如长时间运行的数据库查询、处理大文件、深度递归等。
要解决这个问题,您需要优化脚本。除了优化代码本身之外,减少后续请求的执行时间的一个简单方法是实现某种服务器端缓存。
这意味着浏览器正在接收来自服务器的响应。
如果时间很长,则意味着您的网络连接速度很慢或接收到的数据(太大)。
因此,为了减少此时间,您需要改进网络连接和/或减小响应的大小。
可以通过压缩传输的数据来减小响应大小,例如通过在gzip输出数据之前启用和/或从输出中删除不必要的字符(例如空格)。如果可能的话,您还可以为返回的数据选择不同的格式,例如使用 JSON 而不是 XML 来存储数据或直接返回 HTML。
为了通常减少等待和接收时间,您可以实现一些客户端缓存,例如通过设置适当的 HTTP 标头,如Expires、Cache-Control等。然后浏览器将仅发出相当小的请求来检查是否有新版本的数据要获取。
您还可以通过将数据保存在客户端(例如将其放入本地或会话存储)而不是每次需要时从服务器获取来完全避免请求。