北在北方

太白枝头看,花开不计年,杯中浮日月,楼外是青天。

导航

一个简单的购物车架构设计

Posted on 2022-05-10 14:46  CN.programmer.Luxh  阅读(550)  评论(0编辑  收藏  举报

购物车可以说是电商平台的一个标配了,起初是用于多种商品的结算,现在很多用户也把购物车当作临时收藏来使用,这里尝试做一个基本的购物车架构设计。

用例分析

加入购物车、查看购物车、修改数量或者规格、移除商品、清空购物车,是一个购物车最基本的功能。

关键流程

1.查看购物车


关键点: 1)商品状态判断:上下架、预售 2)限购 3)库存紧张判断

2.修改数量/规格

关键点: 1)在购物车中加减数量,不涉及库存扣减操作,仅判断当前库存是否购买数量

3.购物车容量


关键点: 1)购物车作为临时存储,容量一般会做一定的限制,根据实际业务而定

数据模型

存储方案

1.基于Redis

使用Redis的Hash数据结构

2.基于数据库

user_id sku_id quantity price
uid_10001 sku_001 10 12
uid_10001 sku_002 2 100
uid_10002 sku_001 10 12

对外接口

接口 说明
/cart/add 加入购物车
/cart/view 查看购物车
/cart/modify 修改数量/规格
/cart/remove 移除商品
/cart/clear 清空购物车