购物车思路分析

购物车思路分析

一、购物车流程

在这里插入图片描述

二、加入购物车

在这里插入图片描述

三、查看购物车
  1. 未登录状态下从Cookie中获取数据
  2. 登录状态下从Redis中获取数据
四、订单结算

在这里插入图片描述

五、削峰处理

在这里插入图片描述

六、总结分析
  1. 技术涵盖:

    cookie+redis+RabbitMQ

  2. 开发介绍:

    购物车(多台服务器跑)目前主流有两种:京东、淘宝,我们采用的是京东模式(用户不登录也可以添加到购物车)。用户没有登陆时,数据存放到cookie中去,cookie中只保存商品编号与商品数量(商品颜色,商品型号。。。),为了提高安全性会将购物车中的数据加密(Base64)后再保存。用户登录成功后将cookie中的数据存放到redis数据库中去,并且清空cookie。

    商品加入购物车后,结算是单独的一个模块(单独的服务器跑)。结算与加入购物模块服务器处理的速度不对等,因此使用RabbitMQ实现消峰。Rabbit只是将"加入购物车模块"与"订单结算模块"的处理速度(被执行的速度)保持一致(购物车与订单一一对应,保证相同的订单结算不会出现多次处理的情况),处理高并发。

  3. 问题:

    商品进购物车逻辑比较复杂(cookie中的商品与redis中的商品合并,还要保证cookie安全性)

    结算模块

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值