使用YSlow分析前端页面性能

摘要:
YSlow是一个基于Firefox的页面开发工具。YSlow根据三个预定义的规则集或用户定义的规则集对页面进行分类。因为get方法将头信息和数据一起发送,所以最好使用get。除非当数据量相对较大时,数据量超过一定范围,否则不适合使用get2PutJavaScript atom JavaScript scriptsblockparalleldownloads;这样,当脚本下载时,浏览器将不会启动任何其他下载。为了帮助页面快速加载,如果脚本有效,请将其移动到页面底部。浏览器在下载js的过程中会阻止html下载,将js放在页面底部有利于页面加载。

YSlow是什么

YSlow analyzes web pages and suggests ways to improve their performance based on a set of rules for high performance web pages. YSlow is a Firefox add-on integrated with the Firebug web development tool. YSlow grades web page based on one of three predefined ruleset or a user-defined ruleset. It offers suggestions for improving the page's performance, summarizes the page's components, displays statistics about the page, and provides tools for performance analysis, including Smush.it™ and JSLint.

YSlow gives you:

Performance report card
HTTP/HTML summary
List of components in the page
Tools including JSLint

YSlow分析web页面并基于一种高性能网站的规则集对于提高网站页面性能提出建议。YSlow是基于Firefox  的页面开发工具。YSlow基于预先制定的3组规则集或者用户自定义的规则集对页面进行分级。它提供一些提高网站页面性能的建议,分析页面的组成部分,显示页面静态文件,以及提供一些性能分析工具,包括Smush.it和JSLint

在firebug扩展里找到YSlow并安装后,它会显示在firebug选项卡里

开始测试网站

      使用YSlow分析前端页面性能第1张

   测试结果

         

使用YSlow分析前端页面性能第2张

综合级别B,算是不错的结果

最左侧列出的平时几项比较所有推荐的优化原则,包括减少http请求,避免空src属性,404页面,使用gzip压缩页面内容等,cnblogs大部分都考虑到了。

现在重点说明几项

1 倾向于使用ajax get请求

When using the XMLHttpRequest object, the browser implements POST in two steps: (1) send the headers, and (2) send the data. It is better to use GET instead of POST since GET sends the headers and the data together (unless there are many cookies). IE's maximum URL length is 2 KB, so if you are sending more than this amount of data you may not be able to use GET.

当使用XMLHttpRequest时,浏览器通过两步实现post请求, (1) 发送头信息  (2) 发送数据。因为get方法是把头信息和数据一起发送的,所以使用get会更好点,除非数据量比较大时,数据量超过一定范围的话,不适合使用get

2 Put JavaScript at bottom

JavaScript scripts block parallel downloads; that is, when a script is downloading, the browser will not start any other downloads. To help the page load faster, move scripts to the bottom of the page if they are deferrable.

浏览器在下载js过程过程中会阻断html下载,将js放置于页面底部有利于页面加载。

3 on Use cookie-free domains

When the browser requests a static image and sends cookies with the request, the server ignores the cookies. These cookies are unnecessary network traffic. To workaround this problem, make sure that static components are requested with cookie-free requests by creating a subdomain and hosting them there.

当浏览器向服务器请求一张静态的图片前,会先发送同域名下的 cookie,服务器对于这些 cookie 不会做任何处理。因此它们只是在毫无意义的消耗带宽。所以你应该确保对于静态内容的请求是无 cookie 的请求。

Use cookie-free domains 的翻译摘自网络,平时开发对于这一项不是很注意

另外提供了Yshow一些工具

       使用YSlow分析前端页面性能第3张

JSLint 是一个在线js语法检查工具,根据自己的规则检测js合法性,编写js时可以作为参考

其它的工具用于显示页面所有js,css等功能

使用YShow可以检测页面性能,为我们平时的优化起到一定的参考作用

参考阅读

http://developer.yahoo.com/performance/rules.html#cookie_free

推荐阅读

一步一步实现网站的多语言版本

说说程序中的日志

如果您觉得文章内容有一定帮助,请点击推荐

PS:YSlow不仅仅在Firefox下可以使用,同时兼容很多主流浏览器,详细请查看官网

 

免责声明:文章转载自《使用YSlow分析前端页面性能》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇漫谈《大型网站技术架构》ant安装(linux)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

测试人员怎样定位bug原因

作为测试人员,和我们最常打交道的,莫属bug。当你发现bug后,会采取什么样的行动?是直接报出来,亦或找找问题原因? 不管是我们自己找到的,亦或是开发修复后告诉我们的,知道问题之所在总是好的。在本篇文章中,笔者试图带领大家一起梳理下,为什么测试人员定位问题很重要,以及我们可以使用什么样的定位方法。 一、定位问题的重要性 很多测试人员可能会说,我的职责就是...

ElasticSearch应用之数据埋点——认识埋点

前言通过阅读本篇,你将获得以下三方面的知识: 什么是埋点? 埋点的用途? 埋点的分类? 一、什么是埋点所谓埋点就是在应用中特定的流程收集一些信息,用来跟踪应用使用的状况,后续用来进一步优化产品或是提供运营的数据支撑,包括访问数(Visits),访客数(Visitor),停留时长(Time On Site),页面浏览数(Page Views)和跳出率(Bo...

最全前端资源汇集(引)

综合类地址 前端知识体系http://www.cnblogs.com/sb1987... 前端知识结构https://github.com/JacksonTia... Web前端开发大系概览https://github.com/unruledboy... Web前端开发大系概览-中文版http://www.cnblogs.com/unrule... Web...

VSCode 前端常用插件集合

1.Auto Close Tag  自动闭合HTML/XML标签  2.Auto Rename Tag  自动完成另一侧标签的同步修改 3.Beautify  格式化代码,值得注意的是,beautify插件支持自定义格式化代码规则   4.Bracket Pair Colorizer  给括号加上不同的颜色,便于区分不同的区块,使用者可以定义不同括号...

前端简历

简历的本质在写简历之前,我们必须清楚的了解一件事情,那就是简历是什么?它不是人生履历,不是项目清单,也不是技能大放送。简历的存在只有一个目的 —— 帮你约到面试。只要能达到这个目的,简历可以是一段视频,一个开源项目,一张照片,甚至是一行字,比如: I wrote javascript 当然,绝大部分简历的形式,就是我们所熟知的,是一篇文章。即使你通过其他方...

【Web前端开发最佳实践系列】前端代码推荐和建议

一、常用的前端文件的组织结构: 1、js (放置JavaScript代码)  lib(放置框架JavaScript文件)  custom.js 2、css(放置CSS样式代码)     lib(放置框架CSS文件)     images(放置用于样式中的背景图)     reset.css( 统一元素默认样式的样式文件)     custom.css...