电商购物车的缓存设计

sucabit 发布于 2014/10/10 10:43
阅读 2K+
收藏 3

对于唯一性商品P,A购物车加入后,在一定时间内B购物车是无法加入的。因此,在B加入P之前需要判断P的有效性,是否可以加入购物车B。主要问题:

1、购物车的初始化或存储,购物车中商品项目的存储或缓存,应该如何实现?

2、商品的时效性是如何判断呢?

加载中
0
CraneH
CraneH
这个用缓存就能搞定,java的话可以用Ehcache,时效性就用缓存的自动过期来处理应该没问题的
0
大连馋师
大连馋师

不建议这么处理~

无论商品数量是多少,都可以加入到购物车中,只是在结算的时候才去check商品数量。这样设计的话用户体验显得比较紧凑,购物车加的爽要是不早点结算,还是没办法买到货物的。

那么就不存在楼主的问题了,转而是商品出库的并发控制了,就要简单多了~

sucabit
sucabit
那我的这个商品,就是一个,没有库存的说法怎么办呢?
sucabit
sucabit
有道理
0
大飞哥没翅膀
大飞哥没翅膀

引用来自“大刕”的评论

不建议这么处理~

无论商品数量是多少,都可以加入到购物车中,只是在结算的时候才去check商品数量。这样设计的话用户体验显得比较紧凑,购物车加的爽要是不早点结算,还是没办法买到货物的。

那么就不存在楼主的问题了,转而是商品出库的并发控制了,就要简单多了~

这个实现起来更合理一些,一方面不影响用户体验,另一方面也不影响商家销售。

0
xmut
xmut

引用来自“大刕”的评论

不建议这么处理~

无论商品数量是多少,都可以加入到购物车中,只是在结算的时候才去check商品数量。这样设计的话用户体验显得比较紧凑,购物车加的爽要是不早点结算,还是没办法买到货物的。

那么就不存在楼主的问题了,转而是商品出库的并发控制了,就要简单多了~

引用来自“莫回头”的评论

这个实现起来更合理一些,一方面不影响用户体验,另一方面也不影响商家销售。

确实。很多大的网站都是这样搞的,比如小米网。抢购时放进购物车,过几分钟后再去付款,就提示“已售罄”,只有你生成订单,才算是真正的“预出库”!!!

虽然抢购不道德,但小米的这个思路代表很多电子商务网站的实现思路。

既然客户看得到商品,那就应该可以放进购物车

返回顶部
顶部