首页 > 编程知识 正文

网站的设计与实现开题报告,调查分析报告

时间:2023-05-05 15:43:58 阅读:57249 作者:752

读者投稿:我在研究网络技术,经常访问这样那样的网站,突然想,为什么我们不去看看这些网站的技术体系结构怎么样了呢? 查一下源代码吧? 于是这个系列就做好了。 你先找谁? 找山寨版的开心网开刀吧。 这个快乐网不是那个快乐网。 呵呵。

老实说,我不太想注册,也不太想研究。 一般来说,一个网站最重要的是首页。 Ok,那就从首页开始吧。

本系列文章为个人研究发表,仅供参考。

分析工具:各种浏览器、firebug (基于Firefox的插件)。

开心网的首页是一个简单的登录页,竟然有385.2KB的大小。 像开心网这样大的流量,每增加1kb就意味着每天n以上的钱。 找不到官方pv或独立Ip的数据。 以alexa的数据为基础来参考一下吧。 日平均独立的Ip估计为528,000。 我想每个独立的Ip都会访问并登录,但实际上可能很少。 因为可能有很多用户直接登录到首页。 (alexa的数据也不那么可靠,仅供参考。

快乐网的页面每增加1k,我们需要多少带宽? 计算起来,需要528,000/1024=515 MB /天的带宽。 然后,平均计算为每天24小时的用户访问平均。 (实际上是不可能的。 一般来说,峰值访问是平均值的两倍以上。 )每秒的消耗带宽为528000/) 24小时* 60分钟* 60秒。 ) 6kb

官,像开心网这样简单的登录,完全可以控制在100k以内的大小。 为什么这么多呢? 稍后通过网页分析就知道了。 这是什么概念? 385-100=285k,计算带宽后为285k * 12k/1024=3.3M。 坦率地说,开心网每天需要增加3.3M的独家带宽。 3.3M的带宽是多少? 以中档机房为例。 北京中档的3M独立带宽,怎么也是3-5万美元吧。 加上CDN的带宽,我认为开心网每年需要增加5-8万美元的费用。

分析一下开心网的问题:

1. Javascript文件直接写入网页中

开心网登录页包含大量的javascript代码,这些代码不利于维护,但也不用于用户加载页面。 粗略计算一下,开心网登录页上有180多行javascript代码,而总代码只有336行。 也就是说,代码中的javascript代码占1/2多。

op:0px; padding-bottom:0px; word-break:break-all">   2. 网页没有开启gzip

  根据文件头返回的信息可以看到,开心网应该在linux上搭建了nginx ,添加gzip应该不会是很难的事吧?而且像html及静态js/css这些文件,gzip后起码可以减少50%的传输量,当是这一项,就可以每年省下上百万的费用。

  当然有人会反对,认为gzip会加重服务器的压力,并且客户端解压的时间与减小文件大小带来的传输速度不会有太多好处。但我认为,对于静态文件来说,可以放到独立的服务器,这个服务器可以把文件压缩后放到缓存中,这样不用去读IO,响应速度会提高。同时,虽然现在用户的带宽都已经是512k的 adsl以上了,但是为什么我不可以让用户更快的看到我们的网页呢?退一万步说,用户真的在乎这个快几秒的,那么我们为什么不可以减小带宽的压力以节省成本呢?如果把节省下的这些钱去奖励员工,没准他们可以给我带来更多的惊喜呢。

  3. Javascript没有做任何处理

  开心网的 javascript可真有意思,他们的开发人员代码质量还不错,起码注释写得还不错,可是问题是,你需要把这些注释都发到客户端么,难道开心网想教我们怎么写javascript代码?这样的代码发到客户端,既占带宽又会泄密网站的代码。

  开心网的核心javascript文件xn.core.js有105k,这么大的其中注释占了不少的代码,我尝试使用yahoo和google的压缩工具进行压缩,但因为代码中有错误无法完成,所以只好放弃。但我估计这个js,最基本的压缩去除空行和注释,可以减少1/5左右的大小,如果进行一些混淆的话,应该可以在40k左右,如果再gzip的话,应该就只有15k以内了。

  4. 图片文件过大

  登录页有一个157k的sys-bj2.jpeg文件,天啦,这么大的。我下载这张图片一看,发现这个图片实际是同几张图片组合的。他们的设计人员其实是想减少网页对服务器的请求数,所以把几个图片合并到一块。但是,他们这种做法是错误的。

  我们要减少请求数,一般是把小图片,一般是几k的36 px* 36px以下的小图片合并,而不是把大图片也合并。因为小图片数量多,而大图的合并,也会增加图片的大小。我将这个图片用ps再优化一下,优化到 66k,也没发现明显的失真。所以我认为,就算是大图,也可以优化到80k以内,而不是如此157k大小的图片。

  再多一句,这个图片总量才5个合并是完全没有必要的,并且图片最大的有600px*255px,而最小的只有10px*10px以下,这种合并没有任何益处,百害而无一益!

  总结

  开心网作为一个访问量非常大的网站,网页结构也非常简单,理应做得更小,比如在100k以内。从我的分析中可以看出,主要问题集中在 javascript,gzip和图片上,代码质量总体还可以。当然,我们不仅只是挑刺,也应该看到一些好的地方,如下:

  1. 首页处理得比较到位,虽然javascript也没有压缩,但总大小只有108k

  2. 文件请求数较少,这个和开心网本身有关,开心网本来就不是一个网页结构复杂的网站,所以文件数自然会比较少了

  3. 静态文件和网页分开部署

  4. Javascript注释比较好,但不应该发到客户端

  重要建议:

  1. 开启gzip压缩

  2. 压缩javascript及css,并将这些文件缓存起来

  最后,这次的分析就写到这里了,就事论事而已,和任何网站及相关的人员没有任何关系,呵呵。

  来源:读者Conis投稿,原文地址。版权声明:本文授转月光博客刊登,其他非授权网站媒体转载,需要添加作者网站地址http://iove.net,否则视为侵权。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。