对“关于购物车的想法”的一些回复

作者:丁学 来源:丁学博客 时间:2009-03-10 18:15:00 

刚看到吴磊同学的一些关于购物车的想法,正巧本人丁学对电子商务这方面比较熟悉,跳出来献丑了,希望对一些同行有些用处。本来想回复到下面的,结果发现写起来比较多,干脆写到这里好了,以后自己找起来也方便,呵呵

问题: 1.购物车中的数据是否应该存储在数据库中?

我特别想知道在真正的项目中,那些真正的软件工程师是如何考虑这个问题的。在Google上一搜,搜到了一篇咱园子里一位网友的观点:购物车应该是个临时存储数据的模块,他将其存放在Session对象中。这位网友说的很有道理,不过我并不喜欢这样的做法。如果大家都将其存储在Session对象中,成千上万个用户一同购物的话,想必ASP.NET服务器必将承受巨大的负载。也许像我们国内的网站可能会好一些,但想Amazon这样的网站,怎么做的呢?

Amazon中国网站,也就是Joyo的网站,并不是将其存储在Session对象中,因为我如果这次放入购物车中的商品没有提交订单,下次登录后购物车中还会有这些商品。因此,我想他们可能是将这些购物车中的数据放入了数据库中。

回复: 把购物车存放在Session中,这种做法似乎只存在于大学里的课程设计或者一些无人在意的实习项目中出现。事实上,基本所有的电子商务网站都把购物车数据存放到了数据库里。下面是一些解释和设计上需要注意的地方:

1、Session并不适合做大数据量的数据存放,当用户比较多的时候势必影响服务器性能,这是应该避免的。

2、Session存在意外丢失的问题,或者当用户不小心关闭浏览器,都会引起购物车内物品全部丢失,用户体验很不好

3、Cookies可以解决上面一条里Session的问题,但是Cookies的长度限制,以及使用Cookies时的通讯开销,还有安全性方面考虑,Cookies并不适合做购物车

4、比较好的用户体验是,无论用户登录与否,都可以在一定时间内记录购物车状态,这就要求数据库内购物车不能与用户捆绑太死

5、放到购物车里的商品,一般都是有购买意向的商品,但并不一定会成为真实的订单,这时候,保留这份数据,对数据挖掘、业务分析有至关重要的作用

标签:Session,购物车,经验,数据库
0
投稿

猜你喜欢

  • sqlserver 导出插入脚本代码

    2012-01-29 18:04:43
  • 目前最全的浏览器/CSS选择器兼容性总结(包括Safari 4 beta)

    2009-02-26 15:26:00
  • 如何在页面中对不同的数据进行相同的处理?

    2010-06-26 12:30:00
  • 不成熟的标准化是我们唯一惧怕的

    2008-08-15 18:55:00
  • css基础教程布局篇之一

    2008-07-31 17:21:00
  • 实现asp长文章自动分页插件

    2011-02-26 13:51:00
  • js鼠标动画特效

    2007-09-26 18:31:00
  • 获取星期几的名称

    2012-01-29 18:16:31
  • 思考如何提高交互设计水平?

    2009-12-08 12:18:00
  • JavaScript Dom编程:介绍学习书籍

    2008-02-20 08:32:00
  • 商品评论的设计

    2009-12-23 13:06:00
  • MySQL 数据编码 latin1 转 UTF8

    2010-10-14 14:20:00
  • asp如何建立和删除文件夹?

    2009-11-26 20:34:00
  • ACCESS的参数化查询 附ASP和C#(ASP.NET)函数

    2008-01-10 12:18:00
  • ASP用户登录模块的设计源码

    2008-10-03 12:16:00
  • 设计规范有谱么?

    2008-06-06 12:28:00
  • 写给JavaScript库开发者们的规则

    2008-10-26 12:30:00
  • 避免Adodb.Stream输出UTF-8时自动写入的BOM(asp)

    2011-08-24 20:32:56
  • SQL存储过程介绍

    2008-02-13 18:52:00
  • mysql慢查询的分析方法

    2010-08-03 14:51:00
  • asp之家 网络编程 m.aspxhome.com