大型电商购物车的实现

我们先来分析一下业务场景:

1.用户没有登录

使用cookie实现购物车:

优点:

1、实现简单
2、不需要占用服务端存储空间。

缺点:

1、存储容量有限
2、更换设备购车信息不能同步。

2.用户已经登录

把购物车商品列表保存到数据库中。推荐使用redis。

Key:用户id,value:购车商品列表。推荐使用hash,hash的field:商品id,value:商品信息。

在用户未登录情况下写cookie。当用户登录后,访问购物车列表时,

     a) 把cookie中的数据同步到redis。

     b) 把cookie中的数据删除

     c) 展示购物车列表时以redis为准。

如果redis中有数据cookie中也有数据,需要做数据合并。相同商品数量相加,不同商品添加一个新商品。
如果用户登录状态,展示购物车列表以redis为准。如果未登录,以cookie为准。






这里是用户没有登录,所以数据都是放在cookie里面,我们验证一下:





猜你喜欢

转载自blog.csdn.net/m0_37499059/article/details/80040514
今日推荐