zoukankan      html  css  js  c++  java
  • 雅虎军规

      遵循雅虎的军规,可以让网站的加载速度更快,所以我们在实际开发中是十分有必要牢记下列的雅虎军规!下面一起来看看都有哪些吧!

    1. 尽可能的减少HTTP请求数。如何减少呢,把Js和CSS文件尽可能合并成一个文件,还有CSS sprites将小图标合并。
    2. 利用CDN系统。内容分布网络 ,解决用户拥挤的状况。
    3. 添加Expire/Cache-Control头。expire头的内容是一个时间值,代表的是资源在本地的过期时间。也就是说,如果Expire头的时间没有过期,每次的访问就不会发送http请求,直接使用本地资源。然后Cache-Control头,是负责控制页面的缓存机制,比expire有更多的功能。
    4. Gzip压缩技术。雅虎规定所有的web文件都应该被Gzip压缩,现在的浏览器都是支持Gzip格式的解压的。
    5. 将CSS文件放在HTML顶部head标签中。为了提供页面渲染性能,应该先加载CSS文件,再进行HTML渲染,提升用户体验。
    6. 将Script文件放在HTML底部。这个是很常见的啦,防止加载过大的Script文件导致页面空白,不渲染。
    7. 避免在CSS中使用Expressions。CSS Expressions是CSS表达式,用于和JavaScript相连接。每一个操作都会严重影响浏览器的性能,所以一定要避免使用它。
    8. 把Js和CSS放到外部文件中。这个是颇有争议的,分为两个派别,一个是放到外部文件,一个是写在页面内。我们一起分析一下两种方法的各自的优点,并灵活应用。外部文件党的优点在于,提高了Js和CSS的复用性,减少了页面自身的体积,可以单独缓存,也提高了Js和CSS的可维护性。而另一个写在页面内的党的优点在于,减少页面的http的请求数,提升页面渲染速度。对于这两种方向,该怎么选择,应当结合实际情况。例如,当某个脚本只应用于一个页面或者脚本和样式文件很少的时候,就可以写在页面内。还有一些网站如淘宝天猫之类的流量非常巨大,非常需要减少http请求数的,都是可以看到他们并非全部提取到一个单独文件的。
    9. 减少DNS查询。DNS查询,也就是将域名转化成IP地址的查询过程。现代浏览器都会将DNS查询进行缓存。这里就涉及到采用单域或多域的资源配置。
    10. 压缩JavaScript和CSS。这个对前端工程师来说已经是一个必备技能了,让Js和CSS的文件更轻量化。可以使用Grunt,但更推荐百度的FIS前端自动化工具。自动化的流程,可以更有效的节省时间,让我们更关注代码本身,而不是其它一些繁杂的事情。有兴趣的可以去了解一下。
    11. 避免重定向。也就是原始请求被重新转向了其它请求。重定向会增加服务器和客户端的往返请求次数,增加了http的请求次数。
    12. 移除重复的脚本。重复调用的脚本文件,浏览器并不会智能的忽略,而是再一次计算,这是一个非常不必要的资源浪费。
    13. 配置实体标签(ETag)。它属于HTTP协议,使用特殊的字符串,来标识某个请求资源的版本。通过ETag来标识本地是否有过一样的缓存文件,这个实体标签可以有效减少服务器的负担。
    14. 使用Ajax缓存。通过Ajax可以在不刷新页面的前提下,实现客户端和服务器的数据交换,实现局部刷新的效果。

      当然我们如何可以智能的做到这些规定呢,这里就不得不介绍一个Firebug的插件Yslow了!这个Yslow可以自动检测制定的规则,并予以一定的等级评定并给出修改的建议。非常的高大上,有木有!

      当然这里就抛砖引玉了,有兴趣的朋友也可以自己去搜索一下Yslow,让你的网站性能有一个更大的提升。

  • 相关阅读:
    Sqlserver 实际开发中表变量的用法
    Python Day 20 面向对象 (面向对象的组合用法,面向对象的三大特性
    Python Day 19 面向对象(初识面向对象)
    Python Day 18 常用模块(模块和包)
    Python Day 17 常用模块(常用模块一 时间模块,random模块,os模块,sys模块,序列化模块)
    Python Day 15 函数(递归函数、二分查找算法)
    Python Day 14 函数(内置函数,匿名函数(lambda表达式))
    Python Day 13 函数(迭代器,生成器,列表推导式,生成器表达式)
    Python Day 11 + Python Day 12 函数(函数名的应用,闭包,装饰器)
    Python Day 10 函数(名称空间,作用域,作用域链,加载顺序等; 函数的嵌套 global,nonlocal)
  • 原文地址:https://www.cnblogs.com/YikaJ/p/4175425.html
Copyright © 2011-2022 走看看