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

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

其实中国电商发展已有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. 服务化

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/1652.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

企业公众号数量怎么申请

一般可以申请多少个公众号?许多用户在申请公众号时可能会遇到“公众号显示主体已达上限”的问题。这是因为在2018年11月16日对公众号申请数量进行了调整,具体调整如下:1、个人主体申请公众号数量上限从2个调整为1个。2、企业主体申请公众号数…

vue---计算属性

姓名案例 1.使用插值语法实现 <!DOCTYPE html> <html><head><meta charset"UTF-8" /><title>姓名案例_插值语法实现</title><!-- 引入Vue --><script type"text/javascript" src"../js/vue.js"&g…

从源码选择到国际化运营:打造成功的跨境电商网站必备指南

跨境电商网站的成功离不开经过精心策划和执行的全面计划。从源码选择到国际化运营&#xff0c;每一步都至关重要。作为跨境电商领域的专家&#xff0c;我将为您提供打造成功跨境电商网站的必备指南&#xff0c;帮助您开拓全球市场&#xff0c;提升边际收入。 选择优质的跨境电…

云服务器ECS选型知多少

云服务器ECS选型知多少 ECS产品规格如何选择实例规格变配 说到云服务器ECS选型&#xff0c;那可以说太重要了。因为对于一个项目来说&#xff0c;从项目到开始到最后的部署上线&#xff0c;每一步都需要付出&#xff0c;这些对于企业或者个人来说都是一笔投入&#xff0c;那么如…

会议预告 | 易基因与您相约2024中国衰老科学大会(附日程) 新品首发

由中国细胞生物学学会衰老细胞生物学分会等单位联合主办&#xff0c;瓯江实验室、温州医科大学老年研究院等共同承办的2024中国衰老科学大会暨国际衰老生物学大会将于2024年4月26日-28日在温州召开。本次大会以“解码衰老”为主题&#xff0c;旨在汇聚全球科研精英&#xff0c;…

全开源商城源码后台php全端uniapp 全开源可二开 功能强大 商城系统源码

内容目录 一、详细介绍二、效果展示1.部分代码2.效果图展示 三、学习资料下载 一、详细介绍 内置8中搭配主色(可自行扩展更多配色)、自由快捷切换适应各大行业需求 已支持小程序&#xff08;微信、QQ、百度、支付宝、头条&抖音、快手&#xff09; H5 APP App.vue中修改 r…

EasyMR6.2 全面解读:四大功能深度优化,解锁全新大数据处理和计算体验

在刚刚过去的2024春季发布会上&#xff0c;袋鼠云带来了数栈产品V6.2版本的全新发布。其中&#xff0c;EasyMR 作为数栈V6.2中的一项关键能力&#xff0c;代表了袋鼠云对大数据生态的深入理解和持续创新。 EasyMR&#xff08;后文统称EMR&#xff09;是袋鼠云基于 Hadoop、Hiv…

CH341A/B USB转USART/I2C/SPI介绍

CH341A/B USB转USART/I2C/SPI介绍 &#x1f4cd;CH341官方文档&#xff1a;https://www.wch.cn/downloads/CH341DS2_PDF.html CH341A/B是一个USB总线的转接芯片&#xff0c;通过USB总线提供异步串口、打印口、并口以及常用的2线和4线等同步串行接口。 &#x1f341;芯片封装&a…

前端表单input的简单使用

1.代码结构介绍 2.实战效果

The layered MVP architecture in Acise

Acise是一款CAx软件开发平台&#xff0c;本文给出Acise中的MVP架构模式的实现思路。 注1&#xff1a;文章内容会不定期更新。 MVP Data Model View Model 参考文献 Erich Gamma. Design Patterns:elements of reusable object-oriented software. Addison Wesley, 1994.Josep…

查询服务器上所有SQL SERVER数据库中是否包含某个字段,且该字段是否包含某个值

公司有一堆相同类别的客户&#xff0c;每个客户都部署了相同的一套系统&#xff0c;每套系统对应一个相同结构的数据库&#xff0c;昨天老板让查一下手机号码177xxxxx248是属于哪个客户的客户。 我要查的这个号码来自于oa_member表中的phone字段&#xff0c;我需要对所有的数据…

实测52.4MB/s!全志T3+FPGA的CSI通信案例分享!

CSI总线介绍与优势 CSI&#xff08;CMOS sensor parallel interfaces&#xff09;总线是一种用于连接图像传感器和处理器的并行通信接口&#xff0c;应用于工业自动化、能源电力、智慧医疗等领域&#xff0c;CSI总线接口示意图如下所示&#xff08;以全志科技T3处理器的CSI0为…

2024年51cto视频如何提取

2024年&#xff0c;对于如何提取51cto网站上的视频&#xff0c;许多人都选择在该平台购买自己所需的学习视频。然而&#xff0c;在51cto网页上观看视频将消耗用户的流量。为了解决这一问题&#xff0c;我开发了名为小白51cto工具的软件&#xff0c;使用户能够轻松将视频下载到本…

如何增强Java GCExcel API 的导入和导出性能

前言 GrapeCity Documents for Excel (以下简称GcExcel) 是葡萄城公司的一款服务端表格组件&#xff0c;它提供了一组全面的 API 以编程方式生成 Excel (XLSX) 电子表格文档的功能&#xff0c;支持为多个平台创建、操作、转换和共享与 Microsoft Excel 兼容的电子表格&#xf…

web前端(简洁版)

0. 开发环境 && 安装插件 这里我使用的是vscode开发环境 Auto Rename Tag是语法自动补齐view-in-browser是快速在浏览器中打开live server实时网页刷新 1. HTML 文件基本结构 <html><head><title>第一个页面</title></head><body&g…

开源事件通知库libevent及网络连接管理模块bufferevent详解

目录 1、libevent介绍 1.1、什么是libevent&#xff1f; 1.2、libevent特点 1.3、网络连接管理模块bufferevent 2、bufferevent有什么用&#xff1f; 3、bufferevent的整体设计与实现细节 3.1、整体概况 3.2、evbuffer与bufferevent 3.3、defer callback 4、bufferev…

python爬虫之爬取微博评论(4)

一、获取单页评论 随机选取一个微博&#xff0c;例如下面这个 【#出操死亡女生家属... - 冷暖视频的微博 - 微博 (weibo.com) 1、fnf12&#xff0c;然后点击网络&#xff0c;搜索评论内容&#xff0c;然后预览&#xff0c;就可以查看到网页内容里面还有评论内容 2、编写代码…

【C#】rdlc报表答应报错:未能加载文件或程序集“Microsoft.SqlServer.Types

文章目录 一、报错信息二、解决方式 一、报错信息 Microsoft.Reporting.WinForms.LocalProcessingException: An error occurred during local report processing. —> Microsoft.Reporting.DefinitionInvalidException: The definition of the report ‘’ is invalid. —&…

Vmware 虚拟机自定义IP地址 - UbuntuServer2204

Vmware 虚拟机自定义IP地址 - UbuntuServer2204 设置网段 选择喜欢的网段&#xff0c; 例如&#xff1a; 166 自定义 IP地址 打开虚拟机&#xff0c; 输入命令查看网卡名 ip addr查看网卡配置文件 ls -al /etc/netplan/编辑网卡配置文件 sudo vim /etc/netplan/00-installe…

C++ //练习 12.20 编写程序,逐行读入一个输入文件,将内容存入一个StrBlob中,用一个StrBlobPtr打印出StrBlob中的每个元素。

C Primer&#xff08;第5版&#xff09; 练习 12.20 练习 12.20 编写程序&#xff0c;逐行读入一个输入文件&#xff0c;将内容存入一个StrBlob中&#xff0c;用一个StrBlobPtr打印出StrBlob中的每个元素。 环境&#xff1a;Linux Ubuntu&#xff08;云服务器&#xff09; 工…