电商平台业务及架构演变史

不少人认为电商系统很简单,因为现在做电商的太多了,看到的电商产品也多。看来看去产品都差不多,没什么特别。

其实中国电商发展已有20多年历史,电商以销售为核心连接着研、产、供、销、服整套的信息系统体系。其中的设计并没有那么简单。

电商产品架构

电商产品相关基本系统模块,随着业务发展,每个系统单元都不断迭代,成熟过程要花费大量人力物力。

订单业务

电商产品中的活动都围绕着订单进行,用户下单流程可以看出所有系统之间的交互。不同公司的业务、团队这个过程中的工作分配各不相同。这里为大家分享得是通用的订单业务流程。

库存管理

订单中的商品是电商产品中必不可少的元素,补充并维护库存的平衡对于后台电商来说,十分重要。

业务框架及模块关系

系统架构图和2个主流程对电商系统的全链路打下了基础,下面我们了解一下电商系统各模块之间的关系。

  1. 大前台
  • 各销售前端

公司往往有多个销售渠道,线下不同类型的加盟店、直营店,线上也有不同模式,渠道用于让用户接触到商品。

例如淘宝系统下有天猫超市、普通商家端、淘宝直播、天猫APP等等。

  • CMS

除了商品页面,网站、APP还有"店铺的首页、维修退换政策、活动等"其它内容页面,这需要用内容管理系统进行管理,

例如QQ空间装修就可以理解为cms系统。

  • 交易中心

交易中心是技术的中间件,所有和销售前端交互的系统都要通过交易中心完成,还要承担一些用户交易流程当中的逻辑。

举如下单前要先调用库存服务,查询库存,用户加入购物车后,调用营销中台计算购物车内商品活动后的总价等。

  1. 大中台
  • 商品中心

商品中心就是一个商品的数据库,所有业务系统都用。

主要包含三层关系:

1类目:产品的类目分前台类目和后台类目,在不同渠道支持自定义。

2 spu和sku的关联

3属性:属性可以绑定在类目下,也可以绑定在spu下或者sku下,子继承父的商品属性,

  • 营销中台

营销中台主要包含两大块:

1活动

2优惠券码:针对不同用户、产品、渠道进行优惠活动设置

用户看到优惠活动一般在购物车中呈现,优惠券码一般在结算时扣除相应的金额。

  • 库存服务

库存一般分为三级:

渠道当前可售库存

产品可售库存

仓库实际库存

解决的核心问题是用户从下单开始到最终扣除仓库库存,在不同环节应该如何去扣减,达到最高的库存使用效率。

  • WPS

WPS解决的核心问题是商品应该如何调度。

订单接收之后,应该由哪个仓库来进行满足,用户在商城界面看到是否有货,应该如何判断。

  • Express

Express解决的问题是当商品的发货任务已经分到了具体的仓库,应该用哪一家快递才能兼顾成本和速度。

不同地区的仓库,快递公司的服务响应、成本是不一样的。

核心逻辑是对于不同的仓库,在路线的配置上选取不同的快递公司。

  • 会员中心

会员中心是对不同渠道提取出共性的用户设计升级规则,或者是付费型会员。

  • 发票中心

业务发展到全球化才会诞生发票中心。因为不同的国家才会对于开票的规范有不同的要求。

核心流程一个是开票,另一个是冲红。不同的业务下,对于开票和冲红的时间点会不同,这一般由订单中心进行定义。

  • 客服服务

客服系统的搭建分为三大块:

1线聊天客服:用户发起的聊天分配给系统后台的人工坐席。

2智能知识库:将用户所有的常见问题汇总到知识库,给用户自动推荐,减少人工客服的压力。

3客服系统操作台:客服可以帮助用户人工的干扰一些订单的进程,如修改价格建立退换单等等。

  • 秒杀

秒杀已经成为各个中大型电商的基本服务,核心逻辑是在于多极缓存,逐级筛选用户。

  • 风控

风控应用场景很多。

例如下单场景:判断出一个高风险的订单,订单将会被系统拒绝,会从两个方面去判断,一个用户历史行为,一个用户当前的下单风险。

  • 结算

包含三个步骤

  • 对账

  • 清分

  • 结算

将从第三方支付获取的货款进行自动结算,告知财务一个结果,从而打到供应商的账户当中,一般会和集团的OA审批流进行结合。

  • 数据中心

所有系统数据会共享给数据中心然后基于数据去进行各种场景的应用。

最常见的是用户画像平台,通过用户画像筛选出用户的偏好进行精准营销。

  • 订单中心

所有渠道的订单都汇聚到订单中心进行统一处理。

如天猫店,淘宝店,抖音店,快手店、自营电商平台,用户提交的订单都会汇聚到订单中心,进行下一步的流转和操作。

财务结算也以订单中心订单状态为标准,保障所有系统上下游数据保证通用数据源。

  1. 大后台
  • WMS

和仓库相关的业务流程都在wms管理,包含业务流程有:

  • 出库

  • 入库

  • 上架

出库类型有很多种,如电商订单是购买出库,仓库接收到出货单后打印分拣单,仓库员工根据分拣单对于货物进行拣货、打包操作,最后将打包完毕的商品放在出库区等待承运商拉走。

  • XMS

XMS 是售后管理系统,售后类型有三种退换修,退换修需要不同的备件库,更换零件或直接更换整机。

退货需要在XMS中判定用户发回货是否满足退货条件, XMS要告诉订单中心再触发支付和结算业务的退款流程。

  • 用户中心

用户中心是存储用户基础数据的地方,承担用户注册登录找回密码,更换手机号的流程。

不同国家支持不同类型的注册方式,如手机号注册、邮箱注册、谷歌账户注册。

技术方案也支持不同类型的前端产品,如Web、Webview、APP等。

不同风险等级的业务,要支持不同类型的注册方式,如电商业务只需要手机号注册,金融信贷业务还需要支持人脸识别、身份证认证。

  • SRM

SRM是供应商管理系统,核心逻辑是对于不同的供应商进行打分和评判,筛选初优质的供应商。

对询价、采购、物流、财务等供应流程进行数据化管理。

网站架构技术的演进

  1. 网站初级架构

一般产品刚开始的做法是三台服务器,一台部署应用,一台部署数据库,一台部署NFS文件系统。

业务增长后,会加应用负载均衡,数据库采用主从复制,读写分离,应对慢慢增长的业务:

  1. 业务拆分

随着业务进一步增长,架构也会根据业务属性进一步拆分,划分为:

  • 产品子系统

  • 购物子系统

  • 支付子系统

  • 客服系统

  • 商品系统

  • 登录系统等等

业务子系统分为核心系统和非核心系统。

  • 核心系统:产品子系统,购物子系统,支付子系统;

  • 非核心:评论子系统,客服子系统,接口子系统。

每个子系统单独部署,避免集中部署导致一个应用挂了,全部应用不可用的问题。

等级用于流量突发时,对关键应用进行保护,实现优雅降级;保护关键应用不受到影响。

  1. 数据库分库,分表

在业务拆分的基础上,结合分库分表和读写分离

  1. 分布式缓存

提高用户体验,加快用户快速访问网站,把热点数据进行缓存

  1. 服务化

最后把各个子系统进一步抽象细化,作为一种服务来提供给其他人使用

相关推荐
Dann Hiroaki8 小时前
GPU架构概述
架构
茶馆大橘8 小时前
微服务系列五:避免雪崩问题的限流、隔离、熔断措施
java·jmeter·spring cloud·微服务·云原生·架构·sentinel
coding侠客9 小时前
揭秘!微服务架构下,Apollo 配置中心凭啥扮演关键角色?
微服务·云原生·架构
做网站建设制作设计小程序推广10 小时前
如何建购物网站提升用户体验
经验分享
程思扬10 小时前
为什么Uptime+Kuma本地部署与远程使用是网站监控新选择?
linux·服务器·网络·经验分享·后端·网络协议·1024程序员节
lipviolet10 小时前
架构系列---高并发
架构
Phodal10 小时前
架构赋能 AI:知识工程推动下的软件架构数字化
人工智能·架构
白狐欧莱雅11 小时前
使用python中的pygame简单实现飞机大战游戏
经验分享·python·游戏·pygame
棱角~~11 小时前
盘点和嗨格式一样好用的10款数据恢复!!
数据库·经验分享·安全·电脑·学习方法
曹申阳12 小时前
2. JVM的架构模型和生命周期
jvm·架构