Posted in 2010年05月12日 ¬ 10:18 下午h.iqst
任何一次改版都是有风险的,就算抛开技术风险不说,由用户的使用惯性所带来的问题,也是无法避免的。
对于大型电子商务网站来说,无论是哪里出了问题,也无论是故障多么短暂,都是任何一个人所缩承担不起的。 所以,大型网站的改版,要遵循一定策略,将风险降到最低。 声明一点,要实现逐步替换式改版,那么新版页面必须与旧版不同,假设旧版是a.html,那么新版应该是b.html;
第一步、邀请用户在线体验新版,并提交反馈,通过小规模用户的使用来发现问题并尽快修正,同时也算是进行改版告知,以对用户表示尊重,为新版造势,减轻用户心里压力;
第二步、一旦确定新版不存在重大bug和问题,可以逐步将流量从旧版引入新版,一般有两种方法: a、假设有e1、e2、e3、e4……等多个入口连接到a.html,那么可以先把e1入口的流量引入b.html,进行观察,稳定后在把e2的流量引入,并最终把所有入口的流量都引入b.html; b、假设有s1、s2、s3、s4……等多台服务器,那么可以先把s1服务器上的流量引入b.html,进行观察,稳定后在把s2的流量引入,并最终把所有服务器的流量都引入b.html;
第三步、一定要在b.html页面提供返回a.html页面的入口,不仅缓解用户的焦虑,一旦遇到严重问题,用户依然可返回旧版进行操作,降低了系统风险,因为即使最及时的反馈,发现问题并处理还是需要时间的,另外,b.html一定要给出bug反馈入口,让用户随时可以把发现的问题告诉pm;
最后、所有流量都导入b.html后,接下来要做的就是详细收集用户的问题,观察用户的反馈,并紧密关注新老页面的流量比例,直到a.html页面流量趋近于0,此次改版基本算无风险实施成功。
当然,此方案也存在问题,实施到第二步时,用户有可能每次刷新出来的页面都不同,有时新版有时又是旧版,虽然此点可能带来用户迷惑,但此问题也是可以解决的,如: 在a.html页面注明:邀请您体验新版…… 在b.html页面注明:您正在使用新版……,如果遇到问题或不习惯,可以随时返回旧版……
对于大型网站,系统稳定性是第一位的,缜密的新旧版替换策略,是一个称职产品经理所必须掌握的方法。

Posted in 2009年09月29日 ¬ 2:23 下午h.iqst
现实中的界面一般来说比较固定,这里的固定指的是位置、颜色、可见性一般不会随意变化,比如电灯开关,无论是否有电或者电灯是否出故障,开关中的按钮都会在那里,不会消失。

开关
然而网络就不一样,你可以很轻易的隐藏一个按钮,或将一个输入框置为不可编辑。这样做其实有很大风险,你的设计一定能够“不言而喻”或者“自我解释”吗?如果不能,那对用户来说,就是件很需要“make he think”的事情。
对于电子商务网站,当商品无货时,购买按钮如何处理是个很有意思的问题,隐藏?改成文字?置为不可点击?改成“到货通知”?

电子商务网站的购买按钮
当一个按钮不可用时,是隐藏它,还是保留它并给予解释?我倾向后者。因为:
隐藏按钮,等于是先制造了一个“疑问”,然后再给予解释;
保留按钮,在按钮上做些处理(灰色,不可点),给予解释,在用户看来也许更容易接受。
从另一个方面讲,“购买”按钮对于一个电子商务网站,存在的意义已经不仅仅是一个普通的按钮,而更像一个风向标,就好象搜索引擎不能没有“搜索”按钮一样,从用户习惯及情感上来讲,它不在那里,你会觉得缺少了什么,越是普通的用户,越会有这样的感觉。
PS:上图中,欧酷的做法比较规矩合理,新蛋和当当的比较取巧,卓越和京东的做法不推荐,
Posted in 2009年09月19日 ¬ 9:56 上午h.iqst
最近在做网站的优化,其中一项包括:对静态文件(如图片,JS脚本文件及CSS文件)启用一个新的独立域名,以杜绝不必要的Cookie传送,提高请求速度并减少带宽。
我们知道,当向HTTP服务器请求某个URL时,浏览器将该URL与客户主机中存储的所有Cookie比较,如果发现域名相匹配Cookie,则匹配 Cookie中包含名字/值的那一行将被包含在HTTP请求头中,以保证依赖于Cookie的功能得以实现。
但是,当请求一个静态图片时,传输Cookie就没有任何意义了。

另外,Cookie的存取是不允许跨域的,这个很好理解,因为有时Cookie文件里会存储一些比较敏感或重要的信息,如果允许跨域读取,那么随便一个网站都可以取得目标网站的Cookie,这是非常危险的。利用这一点,我们可以将静态文件放在新的独立域名下,由于新域名下只放静态文件(最主要是图片和CSS,对于JS文件,如果涉及读写Cookie,那么还是要谨慎处理),并不会产生Cookie,所以请求静态文件时,是不会携带Cookie的,这样就提高了传输效率,减少了一定带宽。
Yslow中倡导的减少连接数,也是部分处于减少Cookie传输的目的,当然,启用了新域名,会增加域名解析的时间,需要权衡。
那么,这么做的效果如何呢?我们做如下假设:
网站日均用户100万,访问首页:30万
首页Cookie大小:0.05k
CSS文件数:2
JS文件数:10
未缓存图片数:50
那么无效Cookie =300000*0.05*2*10*50=15000000k=1.5G
(以上粗略估算,如有不准确的地方欢迎指出)
网站流量越大,图片越多,这个数值也就越大,优化效果也会越明显,所以上了量级的网站,都会作此优化。
Posted in 2009年08月1日 ¬ 8:02 下午h.iqst
最近在进行网站访问速度方面的优化,有些人觉得这个问题好难,方方面面都是影响访问速度的原因,错综复杂,一时感觉难以入手,OK!如果说之前你以这个为借口,那么现在我和你说,只要尽量遵循Yslow的判断标准来做,就会使你的网站改善很多。
那么效果是怎样的呢?我们仅仅把页面顶部的一些js进行了合并,并在页面顶部仅保留了首屏必须加载的js,比如焦点图脚本、minicart等,之后,我们把其它js移至了页面底部,就这些,效果怎么样?让我们来看看商品页的Bounce Rate(跳出率):

看到那个明显的下降了吧,就是这样简单,一个小小的改进,就可以让页面加载的更快,让更多的用户留下来。
好了,现在关闭这篇文章,马上去看看你页面的代码,顶部是否有多余的js需要合并或者下移,Do it,等着看效果吧!
记得,页面访问速度是用户第一体验,是我们与用户都不可能逾越的一关。
Posted in 2009年07月20日 ¬ 10:28 下午h.iqst评论关闭