提高网站第一次加载速度

特别是在手机端访问,用户第一次打开网站,如果得到反馈的时间太久,用户很可能在页面完成加载之前就离开,不会再次访问。所以,网站、web App,提高首次访问的加载速度就显得特别重要了。第一次加载速度是用"首字节的时间"测量的,即从用户点击访问到从服务器返回第一个字节所用的时间,绝大多数情况下,真正的原因在于前端,PageSpeed YSlow和其他无数的工具和服务用来解决这些问题。

浏览器是如何加载页面的

解析域名à发起请求à下载响应à渲染页面

当浏览器要渲染页面的时候,如果页面中有CSS或脚本外链,浏览器会等到这些文件加载和解析完再渲染页面。

为什么页面会加载缓慢

以下是可能的原因

HTTP连接数à接连不断请求很多次小文件比一次请求一个大文件慢很多,即使现代浏览器已经支持并行下载,但是每次请求还是需要承担HTTP层面的开销,创建新请求不仅需要新的开销,还需要耗费CPU和内存,所以,并行下载两个文件的时间并不等于串行下载时速度的两倍。而对于较大文件,比如一些比较大的图片,情况有些不同,因为这个时候,下载占据了请求时间的绝大部分,所以,并行下载的效果会更好。出于这个原因,在网站上将图片与其他资源置于不同的域下是合理的,雅虎的Steve Souders和YSlow团队发现,为当前域创建两个别名,能允许更多的下载并行,会使大文件下载的性能明显改善。使用至少两个最多五个域名是YSlow的经验法则。

另一个需要考虑的是浏览器的cookie,如果一个cookie与请求的域名或路径相匹配,它会伴随着每次请求发送(上传),所以,如果你的域名下有几千字节的cookie,那么此后发送到这个域的每次请求都将把这些字节包含在请求头里,然后发送(这些字节还是未压缩状态)。服务器在读取请求体之前读取这些cookie。cookie可以把一个很小的请求变得很大。

总的字节数à这个原因是显而易见的,被下载的资源的大小

等待时的渲染阻塞à有时候,并不是真的提升性能,但是有一些小技巧,可以让用户觉得网页加载的很快。例如,不管什么时候,给用户一个及时的反馈,让用户知道页面在加载,链接还在,没有断开。

延迟à一个典型的家庭网络链接可能有15ms的网络延迟,一个典型的3G链接有100ms的延迟,3G网络与家庭网络相比,不但下载速度慢了很多,延时也高很多。

缓存能力差à正确的缓存设置,确保浏览器最终不会重复获取已有的资源,是解决这个问题的关键。

PageSpeed为解决页面加载性能问题,提出六个基本规则

  1. 缓存优化:使页面应用的逻辑实现和所需数据一并离线保存
  2. 往返时间最小化:减少请求响应的周期次数
  3. 请求开销最小化:减少上传数据包大小
  4. 有效负载最小化:减少响应包、下载包和缓存页面的大小
  5. 浏览器渲染优化:改进浏览器的页面布局
  6. 移动设备优化:为移动网络和移动设备调整网站

目前移动类别包含两条建议:延迟JavaScript解析和使首页的重定向可缓存

?

除此以外,在实际工作中,我们还会遇到一些细节问题

  1. 为所有尺寸的浏览器使用同一个高分辨率的图像可以大大减少工作量,但是用户却不但要为此买单(流量费用),还要忍受这种下载性能下降的局面。如果不能合理的生成每一种尺寸的图像,也许选择一种折中的,大多数设备上用得到的尺寸,算是一种优化。
  2. 针对不同设备,为了有更合适的布局,我们会采用媒体查询来解决这个问题

    <link rel="stylesheet" media="only screen and (max-width: 800px)" href=""table.css">

    但如果将媒体布局置于css文件内部,把不同布局的代码合并到一个文件中,一次来减少http请求的次数

    @media only screen and (max-width: 800) {}

时间: 2024-10-18 11:39:03

提高网站第一次加载速度的相关文章

提高网站页面加载速度的方法

我们在访问一些网站时,总是感觉页面加载的速度不够快,这是什么原因导致的呢?作为网站的开发者又能做哪些优化,来提高页面的加载速度呢? 工具/原料 网页开发工具 方法/步骤 1 优化图像.图像能吸引访客的注意,但是每一张图片都需要从服务器下载到访客的电脑中,这无疑增加了页面的加载时间.因此,必须优化图像.优化方法包括适当减小图片尺寸,降低图片的颜色深度. 2 去掉不必要的插件.一些免费的插件能够增强网页的功能,但是如果添加了过多的插件,就会增加服务器的负担和页面加载时间.在构建页面时,去掉不必要的插

如何提高WordPress的加载速度

针对wordpress加载速度慢的原因: 1. 由于Wordpress系统默认使用谷歌字体,在国内谷歌域名被屏蔽,所以导致操作反应慢.对于很多商业主题默认使用了谷歌字体.谷歌ajax库.谷歌地图等谷歌服务,所以导致网站前台访问速度慢. 解决方法: 找到Wordpress这个文件 \wp-includes\script-loader.php,找到:fonts.googleapis.com,全部替换成:fonts.useso.com.Useso take over Google". 2.去除复杂冗余

优化网站加载速度的14个技巧

本文为转载,原作者版权声明在最下方.个人觉得总结的很好 优化了加载速度的网站不仅可以提高其搜索引擎的排名,同时也可以降低网站的跳出率,提高其转换率,还能提供更好的终端用户体验,这是当今基于Web环境取得成功的关键. 下面我将介绍几个优化网站加载网页速度的简单方法,一起来看一下. 1.服务器响应时间 即使网站已经格外优化,但是除非服务器响应时间非常快,否则就不会有什么大的效果.当涉及到提高网站的速度,服务器响应时间起着重要的作用.下面是一些提高服务器响应时间的小贴士. ●有独立的服务器,而不是选择

优化网站加载速度

综合来讲:从图片,js,css和请求数着手. 1.合并Js文件和CSS 将JS代码和CSS样式分别合并到一个共享的文件,这样不仅能简化代码,而且在执行JS文件的时候,如果JS文件比较多,就需要进行多次“Get”请求,延长加载速度,将JS文件合并在一起后,自然就减少了Get请求次数,提高了加载速度. 2.Sprites图片技术 Spriting是一种网页图片应用处理方式,它是将一个页面涉及到的所有零星图片都包含到一张大图中去,然后利用CSS技术展现出来.这样一来, 当访问该页面时,载入的图片就不会

优化网站加载速度的14个技巧(转载)

本文为转载,原作者版权声明在最下方. 优化了加载速度的网站不仅可以提高其搜索引擎的排名,同时也可以降低网站的跳出率,提高其转换率,还能提供更好的终端用户体验,这是当今基于Web环境取得成功的关键. 下面我将介绍几个优化网站加载网页速度的简单方法,一起来看一下. 1.服务器响应时间 即使网站已经格外优化,但是除非服务器响应时间非常快,否则就不会有什么大的效果.当涉及到提高网站的速度,服务器响应时间起着重要的作用.下面是一些提高服务器响应时间的小贴士. ●有独立的服务器,而不是选择共享/托管服务器.

网站加载速度优化的14个技巧

下面我将介绍几个优化网站加载网页速度的简单方法,一起来看一下. 1.服务器响应时间 即使网站已经格外优化,但是除非服务器响应时间非常快,否则就不会有什么大的效果.当涉及到提高网站的速度,服务器响应时间起着重要的作用.下面是一些提高服务器响应时间的小贴士. 有独立的服务器,而不是选择共享/托管服务器. 提高Web服务器的质量. 移除不必要的插件,只有那些必要的插件,才需要一直保持启用状态. 2.浏览器缓存 浏览器缓存可以减少HTTP请求,从而反过来提高网站的加载速度.下面就是如何利用浏览器缓存的代

Web前端优化,提高加载速度

研究表明:用户最满意的打开网页时间是2-5秒,如果等待超过10秒,99%的用户会关闭这个网页.也许这样讲,各位还不会有太多感触,接下来我列举一组数据:Google网站访问速度每慢400ms就导致用户搜索请 求下降0.59%;Amazon每增加100ms网站延迟将导致收入下降1%;雅虎如果有400ms延迟会导致流量下降5-9%.网站的加载速度严重影响了用户体验,也决定了这个网站的生死存亡. 可能有人会说:网站的性能是后端工程师的事情,与前端并无多大关系.我只能说,too young too sim

Web前端性能优化——如何提高页面加载速度

前言:  在同样的网络环境下,两个同样能满足你的需求的网站,一个"Duang"的一下就加载出来了,一个纠结了半天才出来,你会选择哪个?研究表明:用户最满意的打开网页时间是2-5秒,如果等待超过10秒,99%的用户会关闭这个网页.也许这样讲,各位还不会有太多感触,接下来我列举一组数据:Google网站访问速度每慢400ms就导致用户搜索请 求下降0.59%;Amazon每增加100ms网站延迟将导致收入下降1%;雅虎如果有400ms延迟会导致流量下降5-9%.网站的加载速度严重影响了用户

【转】Web前端性能优化——如何提高页面加载速度

前言:  在同样的网络环境下,两个同样能满足你的需求的网站,一个"Duang"的一下就加载出来了,一个纠结了半天才出来,你会选择哪个?研究表明:用户最满意的打开网页时间是2-5秒,如果等待超过10秒,99%的用户会关闭这个网页.也许这样讲,各位还不会有太多感触,接下来我列举一组数据:Google网站访问速度每慢400ms就导致用户搜索请 求下降0.59%;Amazon每增加100ms网站延迟将导致收入下降1%;雅虎如果有400ms延迟会导致流量下降5-9%.网站的加载速度严重影响了用户