zoukankan      html  css  js  c++  java
  • 42.如何进行网站性能优化

    1、Content方面

    减少HTTP请求:合并文件、CSS精灵、inline image

    减少DNS查询: DNS查询完之前浏览器不能从这个主机下载任何文件、方法:DNS缓存、讲资源分布到恰当的数量的主机名,平衡并行下载和DNS查询

    避免重定向 : 多余的中间访问

    使用AJAX缓存

    非必须组件延迟加载

    未来所需组件预加载

    减少DOM元素数量

    将资源放到不同的域下面:浏览器同时从一个域下载资源的数目有限,增加域可以提高并行下载量

    减少iframe数量

    不要404

    2、Server方面

    使用CDN

    添加Expires或者Cache-Control: 当Cache-Control和Expires同时存在时,Cache-Control会覆盖Expires。相关链接

    使用Gzip压缩

    配置Etag

    Flush Buffer Early

    Ajax使用GET进行请求

    避免空src的img标签

    3、Cookie方面

    减小Cookie

    引入资源的域名不要包含cookie

    4、CSS方面

    将样式表放到顶部

    不要使用CSS表达式

    不使用@import

    不使用IE的Filter

    5、JavaScript

    将脚本放到页面的底部

    将JavaScript和CSS从外部引入

    压缩JavaScript和CSS

    删除不需要的脚本

    减少DOM的查询

    合理设计事件监听器

    6、图片方面

    优化图片: 根据实际颜色需要选择色深、压缩

    优化CSS精灵

    不要在HTML中拉伸图片

    保证favicon、ico小并且可缓存

    7、移动方面

    保证组件小于25K



    作者:浪里白条小公子
    链接:https://www.jianshu.com/p/79f42a494de0
    来源:简书
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
  • 相关阅读:
    浅谈异或相关性质
    重谈树状数组
    洛谷 U141397 !
    谈谈Sleep和wait的区别
    请描述线程的生命周期
    一个普通main方法的执行,是单线程模式还是多线程模式?为什么?
    创建线程的方式
    一道关于try catch finally返回值的问题
    throw跟throws的区别
    罗列常见的5个非运行时异常
  • 原文地址:https://www.cnblogs.com/dream111/p/13460017.html
Copyright © 2011-2022 走看看