京东购物商城京东商城系统,融合了自营模式、商城模式、三方平台等模式,跟淘宝、天猫以商城模式为主的电商系统相比,业务模式上要丰富很多,包括许多WMS、TMS、OMS的部分 。国内中小型电商公司,如果要学,最好是学习京东的业务架构,因为业务模式上相近一些 。
01
超大型电商系统架构目标
1.构建超大型电商交易平台,兼顾效率和性能,达到高人效、高时效和低成本的目标 。
2.低成本,增加服务的重用性,提高开发效率,降低人力成本;利用成熟开源技术,降低软硬件成本;利用虚拟化技术,减少服务器成本 。
3.高扩展,系统架构简单清晰,应用系统间耦合低,容易水平扩展,业务功能增改方便快捷 。
4.高可用,自动化运维 。整体系统可用性99.99%,单个系统可用性99.999% 。全年故障时间整个系统不超过50分钟,单个系统故障不超过5分钟 。
02
京东商城业务架构设计原则
【京东运营模式解读 京东购物商城官网】1.业务平台化
业务平台化,相互独立 。如交易平台、仓储平台、物流平台、支付平台、广告平台等。基础业务下沉,可复用 。如用户、商品、类目、促销、时效等 。
2.核心业务、非核心业务分离
电商核心业务与非核心业务分离,核心业务精简(利于稳定),非核心业务多样化 。如,主交易服务、通用交易服务。
3.区分主流程、辅流程
分清哪些是电商的主流程 。运行时,优先保证主流程的顺利完成,辅流程可以采用后台异步的方式 。避免辅流程的失败导致主流程的回滚 。如,下单时,同步调用快照,异步通知台账、发票。
4.隔离不同类型的业务
交易业务是签订买家和卖家之间的交易合同,需要优先保证高可用性,让用户能快速下单,履约业务对可用性没有太高要求,可以优先保证一致性,闪购业务对高并发要求很高,应该跟普通业务隔离 。
文章插图
京东电商系统-业务架构图 (来源于@京东技术部)
文章插图
京东业务架构实例:基础业务下沉 (来源于@京东技术部)
03
应用架构设计原则
1、稳定性原则
一切以稳定为中心;架构尽可能简单、清晰;不过度设计 。
2、接耦/拆分
稳定部分与易变部门分离;核心业务与非核心业务分离;电商主流程与辅流程分离;应用与数据分离;服务与实现细节分离 。
3、抽象化
应用抽象化:应用只依赖服务抽象,不依赖服务实现细节、位置 。
数据库抽象化:应用只依赖逻辑数据库,不需要关心物理库的位置和分片 。
服务器抽象化:应用虚拟化部署,不需要关心实体机配置,动态调配资源 。
4、松耦合 。
跨域调用异步化,不同业务域之间尽量异步接耦 。
非核心业务尽量异步化,核心和非核心业务之间,尽量异步接耦 。
5、容错设计 。
服务自治:服务能彼此独立修改、部署、发布和管理 。避免引发连锁反应 。
集群容错:应用系统集群,避免单点 。
多机房容灾:多机房部署,多活 。
04
京东商城应用架构分层
表现层 。包含首页、列表页、详情页 。
业务流程层 。商品系统、交易系统、订单系统、财务系统、物流系统等 。
服务层,服务构建层,其中包含:商品服务、交易服务、订单服务、财务服务、物流服务 。
在治理方面,包括服务质量层、数据架构层、治理层等 。
文章插图
京东应用架构分层 (来源于@京东技术部)
05
京东商城应用架构拆分原则
1、水平扩展 。也就是复制的能力,应用系统实现多机集群、提升并发能力,数据库进行读写分离,如商品读库、商品写库 。
2、垂直拆分 。指的是不同业务系统的拆分,如商品系统、交易系统;数据库方面也是相应拆成商品库、订单库 。
3、业务分片 。同业务进行分片,比如秒杀系统、常规下单系统,要分开;数据库方面,如把订单表按ID取模运算后分库分表 。
4、水平拆分 。服务层面,功能与非功能分开,稳定业务与易变业务分开;数据库方面,冷热数据分离、历史数据分离 。
06
京东商城服务设计的依赖原则
1、依赖稳定的部分 。稳定部分不依赖易变的部分、易变的部分可以依赖稳定的部分、坚决避免循环依赖 。
秒懂生活扩展阅读
- 教你零基础做电商运营 零起步如何做跨境电商运营
- 3分钟带你了解其模式 淘宝门店发货是什么意思
- 免费才能推广自己的店铺 店铺如何推广运营
- 童装一件代发货源app分销模式讲解 童装分销怎么算提成
- 快手直播带货怎么做? 快手直播带货运营技巧!
- 到店自提模式详解 物流自提是什么意思
- 体验京东商城的优势有哪些 京东商城怎么样申请退款
- 京东商家入驻详细规则 京东招商入驻官网
- 怎么看京东店铺动态评分?如何提高?
- 淘宝新店宝贝上架了怎么刷单?新店如何运营?