课前加餐 | 电商系统是如何设计的?
该思维导图由 AI 生成,仅供参考
- 深入了解
- 翻译
- 解释
- 总结
电商系统设计的关键在于需求分析和核心业务流程的设计。文章以一个创业公司的CTO的视角,从需求分析开始,介绍了电商系统的核心流程设计。在需求不明确的情况下,建议先搭建一个最小化的系统,再逐步迭代完善。需求分析的关键是回答系统是给哪些人用的,以及这些人使用系统来解决什么问题。电商系统的核心业务流程主要是购物流程,包括浏览商品、添加到购物车、下单结算、支付、发货和确认收货等环节。这些流程需要清晰的设计和实现。文章强调了业务需求的重要性,以及需求分析对于项目成功的关键作用。 文章详细介绍了电商系统的功能模块划分,包括商品、订单、购物车、支付、库存、促销、用户、账户、搜索推荐和报表等模块。特别强调了促销模块的复杂性和重要性,以及如何将其复杂性封禁在模块内部,避免影响整个系统的复杂度。此外,还提到了系统的角色和需求,以及在技术选型上需要考虑的编程语言、技术栈、第三方框架、云服务和存储系统等方面。 总的来说,本文通过CTO的视角,深入浅出地介绍了电商系统设计的关键要点,强调了需求分析和核心业务流程设计的重要性,以及功能模块划分和技术选型的考虑。对于想要了解电商系统设计和技术选型的读者来说,本文提供了宝贵的参考和指导。
《后端存储实战课》,新⼈⾸单¥59
全部留言(38)
- 最新
- 精选
- 木云先森针对促销的话,还有一个点在实际运营的电商系统中,也需要经常考虑到。订单中要存储每个商品所均分的促销价。 比如A商品100元 B商品100元 用户买了一件A+一件B 激发了一个促销满200减10元 买个商品均摊5元 核心也是为了再做单件售后的时候,计算出首先对应的金额
作者回复: 一看就是真正做过电商的同学👍
2020-02-27659 - 靠人品去赢老师,总算讲到电商系统。我们小公司设计是这样,就是老板这个角色就是超级用户或者是你说的超级运营,除了查看报表什么的,还有其他上货的功能也有。 我觉得困惑的是,购物车这个一次性几个商品,是一个订单还是几个商品一个订单,中间掺杂拼单优惠这些怎么搞,主要问题是客户买完了,突然说这个我不要了,或者要退货退钱。 我们该怎么设计订单,关于购物车订单,一次好多个商品,还有就是带来的优惠折扣怎么搞,按照产品的想法这个要这样,那个要这样,感觉在给自己埋坑啊。
作者回复: 还是我文中讲到的,促销优惠的复杂度都封禁在促销模块里面,让保持促销对外的接口简单。 像你这种情况,促销需要提供几个服务: 一是哪些促销可用:输入是一堆商品和用户ID,促销服务返回可用的促销:比如满减、优惠券之类的。 一个“算价”服务,输入是:一堆商品和使用的一堆促销,促销服务需要验证这些促销是否都可以使用,有没有冲突之类的,如果可用,返回的是计算完成的促销价。 这个促销价不仅包括使用促销之后的总价,还要包含每个商品的“实际优惠价(不显示给用户)”,保证:促销后的总价=Σ所有商品的实际优惠价。这个价格就是用完促销之后,每个商品的实际价格,后续退货、计算成本收益,都以这个价格为准。 这样对于购物车和订单来说,处理就比较简单了,不管你促销怎么玩儿,反正最终你告诉我用完促销之后每个商品什么价格就可以了。促销规则变来变去也不用去改订单服务。
2020-03-04746 - GeekAmI所以,到底是下单扣库存,还是发货扣库存呢?
作者回复: 一般来说是下单锁库存,发货减库存。
2020-02-29732 - FATMAN89我想向老师请教一下,电商系统中如何解决超卖这个问题?谢谢!
作者回复: 还是看具体的业务场景吧。 一般来说,解决超卖问题的方法都是在下单的时候锁定库存,如果订单取消再释放库存。
2020-02-27515 - 良木老师,您提到“用户模块一般不负责用户登录和认证,这是两个完全不同的功能" 这该怎样理解? 我们在做登录认证时会从用户库查询匹配、也会有些跟用户相关的别的逻辑。 谢谢!
作者回复: 我们这里的用户模块主要是维护和管理C端用户信息的模块,用户数据也是业务数据,是电商的重要业务资产,所以最好不要登录认证的安全功能做在一起。
2020-02-27612 - 良木开始阶段一般选java技术栈,如果团队能驾驭别技术栈也是可以的,前端可能只做小程序,数据库使用mysql或最熟悉的。图片视频存储直接购买公有云产品,还需要CDN,框架如第三方支付SDK 等,还要申请一堆东西域名、证书...
作者回复: 对小规模的团队,这是一个非常务实合理的选择。
2020-02-269 - 一个程序员的成长你好老师,看到有同学提到库存的问题,如果用户下单之后,一直没有取消订单,是不是有一个阈值,比如说30分钟,用户还没有支付,这个订单相应的也要失效,同时释放库存。
作者回复: 是的,所以你看很多抢购的订单,如果你下单后不付款,有效期都非常短,为的就是尽快释放库存,给其它人抢购。
2020-03-028 - Middleware清一色 Java,我php 也可以哈,php +swoole
作者回复: PHP是世界上最好的语言😆
2020-03-033 - 新安但我看老师说的是在发货后再减去相应的库存,这样不会造成超卖吗?
作者回复: 下单的时候需要锁定库存,配合发货的时候减库存,才不会超卖。
2020-03-013 - aoe老师,购买成功后,关于”订单快照“的存储策略后面会介绍吗?
作者回复: 具体你想了解哪些技术呢?
2020-02-272