商城购物车基本原理

本文主要讲解电商购物车的实现和原理

首先我们先来分析几个问题

  1. 用户未登录时将商品添加到购物车,用户关闭浏览器再打开(不登陆)之后购物车内的商品是否还存在?
  2. 用户登录后将商品添加到购物车,用户关闭浏览器再打开(不登陆)之后购物车内的商品是否还存在?
  3. 用户登陆后将商品添加到购物车,用户关闭浏览器再打开(登录)之后购物车内的商品是否还存在?
  4. 用户登陆后将商品添加到购物车,用户关闭浏览器之后在另一台机器上打开(登录)之后购物车内的商品是否还存在?
    上面四个问题的答案分别是:
    1—在(用户在未登录状态下将商品添加到购物车中,会将商品存入Cookie)
    2—不存在 (因为用户处于登陆状态时将商品添加到购物车的时候就已经将Cookie中的商品取出存入数据库中,而此时的Cookie为空)
    3—在(用户登录之后添加商品会直接将商品存入数据库,这时购物车的数据就时直接从数据库中读取)
    4—在(同上)

这里再说下 没登录 保存商品到Cookie的优点以及保存到Session和数据库的对比:
1:Cookie: 优点: 保存用户浏览器(不用浪费我们公司的服务器) 缺点:Cookie禁用,不提供保存
2:Session:(Redis : 浪费大量服务器内存:实现、禁用Cookie) 速度很快
3:数据库(Mysql、Redis、SOlr) 能持久化的就数据库 速度太慢

上图是整体流程:在这里插入图片描述


版权声明:本文为shanjairui原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。