本文介绍: 写多读多、写多读少的场景,以 Redis 作为主存储,通过 MQ 异步将数据进行落库持久化如果存在读出来数据,并对读出来的数据进行修改的场景的话,就要考虑是否存在并发问题了,如果存在的话,要加分布式锁进行控制。
社区电商的购物车缓存架构
在购物车中的功能主要有这几个:商品加入购物车、查看购物车列表、删除购物车商品、选中购物车商品进行结算
这里购物车的场景和之前用户信息以及菜谱分享信息还不同,如果在举办了大型购物活动时,购物车可能需要面临写多读少
或者写多读多
的场景,面临高并发的读和写,那么在购物车中就以 Redis 作为主存储,异步的将数据进行落库持久化
商品加入购物车
那么我们先来看一下商品加入购物车的业务场景,当将一个商品加入购物车,流程如下:
商品加入购物车,首先需要判断,商品是否已经在购物车中存在了,那么就分了两种情况,如果商品在购物车中已经存在,我们需要去对购物车中该商品的数量 +1 ,然后在缓存中更新购物车里这个商品的信息,最后发送更新消息到 MQ 中进行异步落库;如果商品在购物车中不存在,那么就直接去缓存中添加购物车里该商品的信息,再发送持久化消息到 MQ 中进行落库
查询购物车中商品
选中购物车中的商品
总结
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。