1.1 中小电商企业系统架构
1.1.1 系统及服务组成
B2C(Business to Customer)模式的中小型电商企业的系统,大致由前端、后端、服务及组件、存储四个部分组成(见图1-1)。
图1-1 中小型电商企业的系统组成
(1)前端系统
前端系统一般是指面向用户的PC网站、App、小程序、门店POS、微信公众号等前端应用系统。这些系统与应用要持续不断地为用户提供服务,还要兼顾良好的用户体验。所以,电商企业在设计这些系统时不仅要考虑功能的简洁、顺畅,还需要关注高可用及快速响应等性能因素。
(2)后端系统
后端系统主要是企业内部使用的相关系统,包括商品管理、采购管理、订单管理、运营管理、门店管理、渠道平台及财务系统等。这些系统的组合有时也被称为企业内部ERP系统。后端系统主要是针对前端系统产生的业务单据或相关活动的流转进行处理,其涉及的业务流程繁多,逻辑也非常复杂,在系统规划与设计时需要考虑不同的业务场景和异常情况。
(3)服务及组件
服务包括商品服务、库存服务、拆单服务、购物车服务、批次成本计算服务、缓存与搜索服务等。这些具体的服务按其服务对象可以分为基础服务与业务服务。组件式的开发可以使业务更加独立、职责更加分明,降低业务系统间的耦合度。
目前技术上应用比较广泛的是分布式的微服务架构。微服务是根据业务领域与系统边界分解而来的更微小的服务,它具备一定的灵活性,也更容易扩展。电商企业如果采用微服务架构,需要做好服务发现、治理、监控等相关工作。
(4)存储层
存储层是电商数据的存储中心,包括数据库、缓存和文件。数据库从结构上可以划分为前端库、后端库、BI数据库,从类型上又分为关系型数据库和非关系型数据库,如MySQL、SQL Server、MongoDB。缓存是一种提高数据访问速度的技术,它可以有效地提升系统性能。随着用户访问量的不断攀升,缓存应用尤为广泛,目前使用较多的是Redis和Memecahed。文件包括图片和各种资质文件等,有些大型企业自主开发了分布式文件存储系统,如淘宝的TFS、京东的JFS等。
在图1-1中,我们可以看到电商财务系统位于后端,处于所有业务系统的后面。所以,我们习惯将前端系统和除了财务系统以外的后端系统称为前端业务系统,如图1-2所示。
图1-2 电商财务系统与前端业务系统
前端注重用户体验,如购物流程、订单跟踪与售后服务,后端的重点在于业务流程、逻辑规则和数据处理等。