如何优化一个网站使之提高访问速度 更新

所属分类: 网页制作 / 应用技巧 阅读数: 354
收藏 0 赞 0 分享

最近公司开始考核企业站下所有站点,首先从itpub开始进行。为此,开始学习关于如何优化一个网站使之提高访问速度这方面的知识。得知page speed 是个不错的工具,就下载下来了。介绍下这个工具吧,Page Speed 是开源 Firefox/Firebug 插件。网站管理员和网络开发人员可以使用 Page Speed 来评估他们网页的性能,并获得有关如何改进性能的建议。对网站的网络服务器配置和前端代码执行若干测试。这些测试基于一组已知可增强网页性能的最佳实践。在网页上运行 Page Speed 的网站管理员会获得一组针对各网页的分数,以及有关如何改善网页性能的有用建议。它会使你的网站更快速,减少带宽成本。

下面以我们的itpub站点为列简要说下:

1 首先你得安装这个插件,具体怎么按,略过;

2 安装后,按F12出现下图

 

3 点击上图花圈的 出现下图:

 

这个82/100是你这个站按照page speed的考核获得分数

自己决定还是不错的。

黄色的表示 警告 可以进一步优化的

绿色的表示做的不错

红色的表示做的不行需要优化了

(itpub没有红色的 这点做的还是不错的)

 

4 看下“启用keep-alive” 关于keep-alive 我会在我的另外一篇博文中着重写下。待续

 

说明it168.com这台主机需要启用keep-alive,可是这是其他项目组的主机,我这边无权修改。所以,在这说下,以后非自己管辖的主机,就直接pass了不管。

5 说下下面的压缩javascript

pagespeed给你的建议是 进行压缩以下的2个js。你点击后面的op...它会给你生成个压缩后的js。然后你可以替换原先的js即可。这地方只说明怎么做。当然了jquery也有min版的压缩后的js。

6 上CDN

其实做了这些 还有个更重要的方面,如果你的公司没钱的话,可以按照上面的来做。如果公司有钱,可以加动态CDN

明后天开始给ITPUB上动态CDN,同时对图片 附件 分离出来用单独的域名。目前首页首屏时间为3.156s

 

希望在上完CDN后网速会得到很大的提高!!!

 

===============================================================================================

这里说下关于性能优化技巧方面一些认识,也是网上传的沸沸扬扬的“军规”:

1 启用gzip。

gzip压缩是一种开发的压缩算法,目前的主流浏览器(Firefox, Safari, Chrome, IE4及以上)与主流服务器(Apache, Lighttpd, Nginx)均对其有很好的支持。gzip压缩是通过HTTP 1.1协议中的Content-Encoding : gzip来进行标记说明,其可以明显减少文本文件的大小,从而节省带宽和加载时间。我做过的一个实验,发现启用gzip后,jquery 1.2.6 minify版本的大小从54.4k减少到16k,减少了70%。gzip适用的情况包括:

HTML\CSS\JavaScript文件,gzip算法对于文本文件的效率比较高,而jpg/gif/png/pdf等二进制文件本身已经进行了一次压缩,再使用gzip的成效已经不明显了。而且gzip压缩需要消耗服务器的资源,而解压缩需要消耗浏览器的资源,对于比较大的二进制文件具有非常高的性能消耗;
尽量使用一种大小写方式,要么全部大写,要么全部小写。学过数据结构和算法的同学一定知道压缩其本身就是对冗余信息熵进行压缩,如何数据原素的类型种类太多,其信息冗余度会降低,从而压缩率降低;
过小的文件(通常小于150个字节)不宜进行gzip压缩,因为gzip会在文件头加入相关信息,对于小文件反而会增加文件的长度;

(以上文字摘自http://www.yakecan.com/archives/3 我表示认同)

那么怎么看你的服务器是否开启了呢?

以我这边的一台服务器为例说明下,我的web服务器是nginx的,就以nginx说下:

打开nginx的配置文件,你会看到相关的gzip的设置,如果没有的话,请你们公司的运维同事设置启用即可

 

types 是使用哪些类型的文件使用到gzip。

 

你可以用站长工具查看你的站点是否使用gzip了,如使用http://tool.chinaz.com/Gzips/可以查看

以我的一个站点为例,

 

大家可以看到这个结果就知道了。

 2 最小化JS和图片

    你可以用一个压缩工具压缩即可。对于JavaScript文件本身具有非常大的优化空间。所谓JavaScript压缩,就是通过一些工具将函数、变量名进行优化(其实就是尽可能缩短变量名长度),消除多余字符(比如空格、换行符、注释等),最终得到的代码可以在分析和执行上得到性能提升。压缩后得到的代码对于机器而言是可读的,对于人来说就不行了,因为文件内容已经面目全非。所以压缩一般用于生产期的代码,不能使用于开发期。

3 JavaScript最小化

   比如jquery.form.js,最小化后减少11.9kb,减少54.8%的空间。点击minified version,在新窗口中可以看到Page Speed为你优化好的版本,直接更新到服务器就可以了。

4 启用浏览器缓存

  这是经常使用的方法。当请求的资源在浏览器本地得到缓存后,第二次请求这些内容就可以从直接缓存中取出,减少了连线的HTTP请求。

5 JavaScript延迟加载

   通常浏览器在解析HTML时遇到JS文件会先下载,解析执行后才会下载后面的内容,期间自然会造成一定的延时。为了提高性能,尽可能将JS文件的位置后移,如果可能,还可以通过部分代码进行异步加载。另外,对于JS和CSS在必须放置在一起情况,需要报JS放置在CSS之后,这样CSS与JS文件可以同步下载。

6 文件拼接,就是可以合并的文件,就合并成一个文件

7 减少HTTP请求。这个是同上面的几个一起使用的。

8 只加载head里的部分js。其他的可以放到底部加载。

更多精彩内容其他人还在看

sitemesh教程-页面装饰技术原理及应用

Sitemesh是一种页面装饰技术:它通过过滤器(filter)来拦截页面访问,据被访问页面的URL找到合适的装饰模板等等,感兴趣的朋友可以了解下哦
收藏 0 赞 0 分享

浏览器可以注册的事件小结

我们在网页制作中经常会用到浏览器事件,这里简单的整理下方便需要的朋友
收藏 0 赞 0 分享

从image/x-png谈ContentType(s)

今天在做一个文件上传的功能的时候,发现我总是上传不了png的图片。经过调试发现,应该是在ContentType的地方判断失误了。后来百度了一下发现一个有意思的现象,我发现png的图片的ContentType并不是我在注册表中看到的image/png,而是image/x-png
收藏 0 赞 0 分享

窗口中的各种距离/滚动距离的精确计算汇总

平时在项目开发中,没少跟边距,位置,坐标什么的打交道,悲剧的是,如果你对这些东西没有非常清晰的概念,编码的时候会非常痛苦,到处找资料寻求距离的精确计算,接下来本文提供一个示意他,希望对你有帮助
收藏 0 赞 0 分享

web的各种前端打印方法之CSS控制网页打印样式

使用CSS控制打印样式,握刚刚使用时一塌糊涂,根本不知道CSS中的midia的作用是什么,问到别人说导入这个样式,还傻乎乎的不知所措,接下来介绍CSS控制网页打印样式是如何实现的
收藏 0 赞 0 分享

响应式WEB设计学习(1)—判断屏幕尺寸及百分比的使用

现在移动设备越来越普及,用户使用智能手机、pad上网页越来越普遍,但是传统的fix型的页面在移动终端上无法很好的显示。因此,Ethan Marcotte提出一种响应式web设计的概念,响应式web设计的英文为Responsive Web Design,简写为RWD,感兴趣的朋友可
收藏 0 赞 0 分享

响应式WEB设计学习(2)—视频能够做成响应式吗

除了图片以外,还有一种常见的多媒体形式是视频。有时在web设计中,根据需要会在页面中加入视频,视频大小的自适应单靠CSS本身似乎是做不到的,感兴趣的朋友可以详细了解下
收藏 0 赞 0 分享

响应式WEB设计学习(3)—如何改善移动设备网页的性能

究竟是网页中的何种元素拉低了网页在移动设备中加载的速度呢?这些元素应该做何处理以提升页面在移动设备中的整体性能?是否存在一种设计模式可以同时满足移动端及桌面端的页面设计呢?带着这些疑问开始本文之旅吧
收藏 0 赞 0 分享

网页设计必备手册 216网页安全色大全

网页安全色是指在不同硬件环境、不同操作系统和不同浏览器中都能够正常显示的颜色集合(调色板或者色谱),也就是说这些颜色在任何终端用户的显示设备上都是相同的效果
收藏 0 赞 0 分享

网页设计中设计出有层次感的界面的经验介绍

很多网友常说自己的网站为什么色彩上总是有问题,总是看起来没什么精神,没办法吸引人注意。观察了一些网友们设计的网站发现他们在用色上不够大胆,同时也缺乏对色彩层次的理解。
收藏 0 赞 0 分享
查看更多