先思考一个问题:什么是网站性能?
科学的解释:用户输入网站域名,通过DNS解析,找到目标服务器IP,请求数据经互联网达到目标服务器,目标服务器收到请求数据,进行处理(执行程序、访问数据库、文件服务器等),处理完成将响应数据又经互联网返回给用户浏览器,浏览器得到结果进行计算渲染显示给用户。这整个过程就时刻就体现着网站的性能。(-----哎嘛一口气念完好累,关键还没懂!)
通俗易懂的回答这个问题的话:网站性能就是网站访问速度的快慢,就是用户从输入网址按下回车键,到看到网页的这一过程的快慢,就是性能。这是最最直观的说法。
显然,访问速度快就是性能好。速度慢,当然性能就不好,事实是,速度慢早已成为网站杀手。早些年Amazon曾经做过一个统计:网页加载时间每延长1秒钟,一年将减少16亿美元的营收。(16亿美元是一个什么概念呢?2015年,百度全年的总营收约100亿美元!)。
优化的商业价值显而易见。但是,速度快是一个感知体验,到底速度有多快才算够快? 而“快”有体现在哪些指标上呢?
今天,我们就来理一理,网站性能指标到底有哪些?怎么样才叫够快?
我们用性能极客一个典型的感知性能评测来说明这个问题。我们以天猫的网站为例,进行测试。
在跑了几分钟后,会出来如下结果。
查看详细报告,我们可以提取出来以下主要指标。
01关键帧时间
02首字节时间
03浏览器开始渲染时间
04资源请求数
问题来了:
1.这些指标分别是什么意思?
2.我的网站到底性能如何,怎么看?
接下来我们逐一分析,结合数据统计结果尽量“科学的”评估您网站性能如何。
01关键帧时间
关键帧时间是一个时间指标,性能极客独创的一种分析网站加载性能的技术——关键帧技术测算而来,关键帧技术结合图像分析、人脑视觉感知、统计学,把页面加载过程中最符合用户视觉意识中“该网站加载完成了”的时间点定义出来,该时间点就是关键帧时间。
有什么用?
关键帧时间真实地反应了网页在渲染过程中,人脑视觉对其渲染速度的实际感受。是衡量网站性能最直观的指标。
问:为什么我们用关键帧时间而不用业界通用的加载时间(Load time)呢?
答:“Load time”是网页加载事件,一定程度上反应了网页加载的速度。但是现代网页大都会在onload事件后调用javascript去获取动态数据并操控页面,从而影响到页面的显示进程,所以加载时间并不能代表用户感知到的性能。
关键帧时间则衡量了从发起请求开始到服务器响应、页面开始渲染、页面显示完成整个过程中用户感知上的页面加载完成时间,更为精准。
多少才好?
大量数据显示:页面加载超过5秒就会有74%的用户离开页面!!!
关键字时间不超过5秒,你的网站才可能评优。
02首字节时间
TTFB (Time To First Byte)-首字节时间,是指网络请求从被发起到从服务器接收到第一个字节这段时间,它包含了 TCP连接时间,发送HTTP请求时间和获得响应消息第一个字节的时间,是能够反映服务端响应速度的重要指标。
有什么用?
首字节时间主要帮助我们了解一定程度上的网络的性能以及服务器后端耗时的健康情况,通常作为揭露后端耗时或者CDN性能的指标。
多少才好?
性能极客结合大量统计数据,给出的最优范围是:首字节时间不超过200ms。
03开始渲染时间
TTSR(Time to Start Render)开始渲染时间,指某些非空元素开始在浏览器显示时的时间,这也是一项重要指标,即TTSR越短,用户越早浏览器中的内容,心理上的等待时间会越短。
有什么作用?
这个时间决定着用户对页面的第一体验。时间越短,给用户的体验就是页面速度越快,这样用户等待其余内容展现的耐心也会更大一些。时间长则会考验用户的耐心,也会影响用户的跳出率。
多少才好?
性能极客给出的最优范围是:不超过2秒!
04资源请求数
资源请求数(Total number of Requests)是指:一个页面加载完成时,向服务器端发起的请求的总数。
80%的响应时间花在下载网页内容(images,stylesheets, javascripts, scripts, flash等)。合并文件以减少请求次数可以减少网络建立连接的耗时,提高传输效率,从而加快页面渲染进度。
多少才好?
资源请求总数不超过40才算优秀。
需要注意的是:各个指标虽然单独都能很大程度上影响性能,但是网站的综合性能是各个指标综合影响的结果,因此要全盘考虑各项指标,综合分析才能准确的衡量该网站的性能。
现在,知道如何评价你的网站性能了吗?
也去用性能极客测一测你的网站性能吧!www.perfgeek.com
网友评论