面向用户的网站性能优化

在互联网这个行业,”以用户为中心的设计“已经达成共识,但很少听到有人说”以用户为中心进行性能优化”之类的话,很多时候,网站性能优化是面向服务器来进行,或许,应该扭转一点思维,改到考虑如何面向用户进行网站性能优化的时候了。

优化的目的

为什么要做优化? 不外乎如下几种原因:

  • 节省资源,服务器、网络资源;
  • 消除或者减少系统瓶颈;
  • 提升用户体验

多数公司做优化都是从前两者出发,而”提升用户体验”虽然是从用户(网站访问者)角度出发,但却很少提升到非常重要的高度。

此外,或许也有炫技的因素在内,为了优化而优化,当然这是不可取的做法。

建立有效的度量

有效的优化方式前提是要能有有效的度量。一个用户访问网站,从 提交请求到得到响应,完整看到页面,中间的每个环节都应该确保优化得当。否则如果后端已经”完美”优化,单用户请求的页面有 N 多大图片,也是个糟糕的事情。在没有建立端到端的度量数据收集之前,很可能存在较大偏差。

end2end_web.png
(图Refer)

一些常见的问题是,您知道访问自己站点的用户在使用什么样的线路? 什么样的 ADSL 线路,有多少还在用拨号上网? 在网吧上网的用户有多少? 多少是移动设备用户? … 如果此类数据收集有所欠缺,也很难做出有效的性能度量。

一些优化的错误认识

服务器压力降低 = 用户访问速度快 这是最常见的一种优化态度。技术人员对自己的网站用尽了各种优化手段,服务器压力终于降低了,单用户会真的满意么? 未必。但如果从没观察过终端用户的访问习惯和网络连接方式能客观因素,也是徒劳。

前端优化不如后端优化重要 前端优化仍然没有受到应有的重视,仍有多数设计者对性能问题熟视无睹,随手弄个 1M 大小的活动页面对他们来说,图片设计是否华丽可能才最重要。对于越来越需要多媒体、富媒体表现的页面来说,前端优化其实是重中之重。两手抓,两手都要硬。用户访问费劲的页面,再华丽也是垃圾。

节省 PV = 减少 PV 以 KPI 为导向的 Web 公司中,PageView 可能是很多人的饭碗,轻易不要太岁头上动土。不过对于 KPI 制定者来说,起码要具备如何识别虚假繁荣的 PV (除非也是作弊团伙成员)。不必要的 PV 能节省就节省,节余的带宽资源留给更有价值的应用。

把优化作为项目来做 有些网站会有”起个项目对某某块做个优化”之类的事儿。优化应该是个长期、持续的事情,如果单纯的作为项目来做,可能一波热乎劲儿过去就没人管了。

–未完待续–

此文作者:, 位于 Arch 分类 标签: , on .
转载须以超链接形式标明文章原始出处和作者信息及版权声明.

16 thoughts on “面向用户的网站性能优化

  1. blogkid

    我觉得很多时候对于大公司大网站的问题在于,后端对前端的东西知之甚少,做的时候根本不会去考虑前端可能受到的影响;前端也对优化和后端不了解或不关注,想加什么就加什么,想怎么搞就怎么搞。
    我觉得最头大的地方就是怎么把前端和后端搭起来,让两边都知根知底,相互了解。

    Reply
  2. oneoo

    我想大型的网站应该有专职的性能分析师
    从后台应用到前台优化都能够熟悉,这个分析师在团队中起到很好的桥梁作用。并且能提供专业的意见~

    Reply
  3. 木匠

    关于用户体验, 我赞成Christian Antognini(Troubleshooting Oracle Performance 作者)的度量方法.
    很简单.
    比如说购物篮Check out的最大响应时间,
    200用户并发 90%

    Reply
  4. Fenng

    @木匠
    这是幂等原理的提现
    Troubleshooting Oracle Performance 这本书,我们在翻译中…

    Reply
  5. 木匠

    我在圣诞节前才读完, 翻译分给我一章吧.
    小于号都不见了,改成文字. (加个HTML标记试试, 失败了)
    比如说购物篮Check out/Submit Order的最大响应时间,
    200并发事务 90% 小于 0.7秒, 99.9% 小于 1.5秒
    500并发事务 90% 小于 1.2秒, 99.9% 小于 3秒

    Reply
  6. zlxdviolet

    可以看看基调网络的产品,他们已经做了类似的工作。是从最终用户的角度来进行网站性能监测的。他们提供的报表很详细,用着感觉还不错。我们公司内部也开发了一套类似的东西,但远没有基调完善

    Reply
  7. Fenng

    @zlxdviolet
    这家公司我关注过。但只是关注网络本身的东西。实际上,应用千差万别,只关心网络不知/注重如何优化整体应用也是枉然

    Reply
  8. 三三

    很多网站都没有这么专业的人才搞的,就像大多数用word编辑文档的人,哪里懂得用啥“标题”“目录”之类的高级功能噢!

    Reply
  9. wall

    对于时下繁忙的网站,我认为
    1)前段优化比后端优化重要
    2)优化操作流程和页面布局比优化技术重要

    Reply
  10. greengnn

    性能优化,姑且说是速度优化,最近一直把他作为一个技术来处理,其实是一种态度,对自己用户负责的态度,而不是以自身为出发点。
    百分之80的速度提升在前端,除了小图片过多,内容图片没有做字节处理,静态文件没有合并和压缩,服务器端没有做cache,gzip压缩等之外。就是态度问题了。
    google为什么把自己的网站做的那么简洁以速度为第一要素,这就很明显看出对速度的态度,也就是网站可用性的态度,在华丽的网页打不开就等于无用。
    这就是策划在前期是不是考虑到速度的要素,采用合理的产品模式,设计师是不是再以简单的方式去呈现需要达到的视觉效果,开发人员是不是注重每一个影响速度的环节等等..

    Reply
  11. 李少麒

    好文章啊,必须顶一个。推荐一个站长工具 http://www.gongju.com 里面也有个测速的,有条形码,可以很直观地看出下载速度,解析速度等。就是这个ce.gongju.com/space.itpub.net

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *