互联网电商购物车架构演变案例

本文介绍了云购物车的功能模块及技术架构设计,包括层级设计、群集设计等内容,并探讨了分布式设计的目标,如稳定性、高性能、虚拟化弹性控制等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

购物车主要作用在于:1、和传统卖场类似,方便用户一次选择多件商品去结算。2、充当临时收藏夹的功能。3、对于商家来说,购物车是向用户推销的最佳场所之一。

早期

ERP拆分 
业务服务化拆分 
WCS拆分

购物车功能模块概况 

层级设计 

群集设计 

云购物车从应用层 面上设计了三个—— 交互层、业务组装,基础服(横向)每一都 由一个或多集群组成

    交互层 分为购物页 (加入购物车,车一去结算),结算页(车二,立即购,提交订单去 支付) 
Ø 业务组装层 提供标准购物车流程 ,非提供标准购物车流程   
Ø 基础服务层 外围系统数据的下发或者基本原则功能封装

云购物车从应用集群 上设计了两个—— 购物车集群、结算车集群(纵向)

  • Ø 购物车集群 :高访问量,用户信息很敏感不可丢失(购买商品的基本) 
        结算车集群 :购物车结算的附加信息 ,非用户敏感级(支付配置等,配置信息可以计算出来)

技术架构设计

采用分布式设计,主要能够达到以下目标:

  • Ø 稳定可靠 (Stability), 系统必须提供7*24 的可靠服务,以满足需求的可靠服务。 
    Ø 高性能 (High (High(High-Performance),核心系统为全站以及线下的提供服务,必须保证高性能,且在并发场景下提供可靠的服务 。 
    Ø 虚拟化弹性控制 (Elastic) ,计算资源能够各种场景下进行平滑地伸缩以应对相应的需求,主要是利用 VM 或者 LXCLXC 等技术。例如:大促期间快捷的扩容后 等技术。 
    Ø 无单点故障 (No -Single Single Single-Point Of Failure),保证系统在任何环节都不存单点故障。 
    Ø 故障屏蔽自动化 (Fault Masking ),在遇到网络、 应用业务DB 等各种故障的情等各种故障的情况下,能够做到故障屏蔽的自动化、人性。

三段缓存 


异步检查 

存储异构 

优:流程简单 
缺:流量冲击,高并发事物

购物车支付方案

购物车支付中台的异构方案

Nginx+LUA 聚合业务前置 业务接口合并

反黄牛

多维度人员特征识别

买书问题 dp实现 题目:买书 有一书店引进了一套书,共有3卷,每卷书定价是60元,书店为了搞促销,推出一个活动,活动如下: 如果单独购买其中一卷,那么可以打9.5折。 如果同时购买两卷不同的,那么可以打9折。 如果同时购买三卷不同的,那么可以打8.5折。 如果小明希望购买第1卷x本,第2卷y本,第3卷z本,那么至少需要多少钱呢?(x、y、z为三个已知整数)。 1、过程为一次一次的购买,每一次购买也许只买一本(这有三种方案),或者买两本(这也有三种方案), 或者三本一起买(这有一种方案),最后直到买完所有需要的书。 2、最后一步我必然会在7种购买方案中选择一种,因此我要在7种购买方案中选择一个最佳情况。 3、子问题是,我选择了某个方案后,如何使得购买剩余的书能用最少的钱?并且这个选择不会使得剩余的书为负数 。母问题和子问题都是给定三卷书的购买量,求最少需要用的钱,所以有"子问题重叠",问题中三个购买量设置为参数, 分别为i、j、k。 4、的确符合。 5、边界是一次购买就可以买完所有的书,处理方式请读者自己考虑。 6、每次选择最多有7种方案,并且不会同时实施其中多种,因此方案的选择互不影响,所以有"子问题独立"。 7、我可以用minMoney[i][j][k]来保存购买第1卷i本,第2卷j本,第3卷k本时所需的最少金钱。 8、共有x * y * z个问题,每个问题面对7种选择,时间为:O( x * y * z * 7) = O( x * y* z )。 9、用函数MinMoney(i,j,k)来表示购买第1卷i本,第2卷j本,第3卷k本时所需的最少金钱,那么有: MinMoney(i,j,k)=min(s1,s2,s3,s4,s5,s6,s7),其中s1,s2,s3,s4,s5,s6,s7分别为对应的7种方案使用的最少金钱: s1 = 60 * 0.95 + MinMoney(i-1,j,k) s2 = 60 * 0.95 + MinMoney(i,j-1,k) s3 = 60 * 0.95 + MinMoney(i,j,k-1) s4 = (60 + 60) * 0.9 + MinMoney(i-1,j-1,k) s5 = (60 + 60) * 0.9 + MinMoney(i-1,j,k-1) s6 = (60 + 60) * 0.9 + MinMoney(i-1,j,k-1) s7 = (60 + 60 + 60) * 0.85 + MinMoney(i-1,j-1,k-1)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值