前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >以Lazada为例,看电商系统架构演进

以Lazada为例,看电商系统架构演进

作者头像
春哥大魔王
发布2020-02-18 21:51:54
1.3K0
发布2020-02-18 21:51:54
举报

什么是Lazada?

Lazada 2012年成立于新加坡,是东南亚第一电商,2016年阿里投资10亿美金,2017年完成对lazada的收购。业务模式上Lazada更偏重自营,类似于亚马逊,自建仓储和为商家提供服务。在阿里完成对Lazada的收购后,开始对Lazada进行了一系列架构升级,目的是升级为阿里的技术引擎。

Lazada的原始系统

Lazada初期有两个系统:

  • Alice:前台展示系统
  • Bob:商品,交易,优惠等后台系统逻辑

业务发展过程中将Bob进行了一定的拆分,其中交易,履约能力沉淀到Oms系统中。系统整体开发语言为Php,一些新的系统为Go。

这样的架构存在很多问题,如:

  • 架构划分不合理:没有分布式和模块化分层思想,模块和模块之间代码耦合严重,改动牵一发而动全身。
  • 稳定性差:每周都有P1故障发生。
  • 大量数据同步:系统间不是通过服务化接口调用,而是采用数据复制拷贝方式实现数据共享。
  • 迭代周期长:系统架构复杂造成的结果是,研发团队合作效率低,稳定性差,导致新需求交付慢。

阿里技术的赋能

在阿里对Lazada收购之后,同时考虑到业务形态及所处的软件技术背景,阿里首先将阿里沉淀的无线端和搜索链路进行了阿里技术体系升级。将用户,商品详情,购物车,订单,退款,履约等系统全部重构,将数据迁移到新系统。

阿里在整个架构投入上,首先采用调用精兵强将直接接管新架构的研发,这样可以更好的接入和适配到阿里整体技术栈上。同时整个系统架构交付上,不考虑灰度策略,而是一刀切,开发一个完全新的系统。

这两点对于大家有一定到借鉴作用,在过去几年参与过很多系统的重构或者是技术方案的迁移。如果拖拖拉拉的不投入系统的人力和时间是很难保质保量完成一个重构需求的,同时很多时候在做系统融合过程中,过多的考虑灰度方案,不仅造成技术复杂度升高,可操作性同样降低。

在明确了团队和交付方案与交付时间之后,团队背水一战,全力以赴进行了新Lazada系统的研发。

任何一个原有系统的整体架构迁移,势必会存在时间紧,任务重,强度大,复杂度高的问题,首先需要读懂原有解决方案的用意,才能更好的整合多个需求点并进行整体抽象或者合并,这个过程必然涉及到不断的重构,融合,下沉。

其次想要将新系统架构的业务能力融合进阿里整个技术层次与技术栈下,需要让技术团队对于阿里体系化分层有清晰的认识,需要对于设计理念和技术体系进行快速的学习与消化。

最后一个系统的完美交付涉及到项目管理相关的能力,对于项目交付和落地能力,我认为同样是一个架构师必备的能力。要求海外与阿里技术人员按照Ticket做事,明确Ticket和设计文档。

新Lazada系统的灰度交付

在完成了一系列的架构设计,研发投入,相互协作之后,新Lazada系统进入了交付阶段。整个交付流程涉及到:技术方案设计,功能开发,测试,UAT,割接上线。在整个上线过程中,为确保系统无问题不影响用户正常使用,需要在凌晨进行上线操作,通宵也是家常便饭。

最终,经过6个月的艰苦奋战,Lazada新网站和老系统相比,有了17个电商核心域,包括会员,商品,交易,营销等。有了29个核心模块,包括无线,前端,后端三大部分。

系统后端模块的7个核心系统,即降低系统复杂度,模块的单独拆分也比较容易。从单IDC,中间件,监控运维,业务系统都采用了阿里中台技术相关解决方案,节约了很多时间成本。新的APP包括个性化首页和新搜索功能上线之后,系统运行稳定,性能有了很大提升,DAU和GMV都有了200%的增长。

系统重构赋能未来

在对Lazada完成了一系列技术重构之后,新的系统架构可以更好对服务于未来的赋能需求。

  • 在之后的版本迭代中,Lazada陆续实现了无线端的APP秒开,个性化首页,新搜索算法。
  • 在卖家端,新的橱窗推荐,优惠券,详情装修,客服IM工具,旺铺等卖家赋能工具。
  • 在平台能力上,强大的选品和活动快速搭建能力,数据统计平台,智能Push平台等。

阿里中台的胜利

Lazada的整体架构可以实现快速的重构与赋能,得益于阿里强大的中台能力。阿里在2015年提出了大中台,小前台战略,在Lazada重构过程中,几十个系统的重写和数据迁移,如果没有阿里强大的中台支持,是不可能完成的。阿里中台是整个重构计划的核心与关键。

阿里中台提供了IDC,网络,机房,操作系统,中间件,数据库,算法平台,数据平台,计算平台,业务平台等一系列技术与产品的支持。

以数据处理为例:

重构系统中,数据工程师将Lazada所有数据,全量倒入阿里计算平台,并计算出通用中间表和分区表,供项目中搜索索引构建,数据迁移,BI报表等多个子项目使用,极大的节约了成本。

阿里的DBA工具,可以轻松支持可视化查询,管理,运维Lazada原有DB集群。

业务中台上采用TMF和星环框架,可以将业务定制和平台逻辑分离,极大提高开发效率。

项目管理工具Aone,可以很好的管理国内外几百位工程师,管理流程,Bug跟踪,让整个项目管理有条不紊。

同时阿里沉淀了大量出海解决方案,对于技术产品出海和国际化部署提供了丰富的保障,比如活动搭建平台斑马,推荐系统TPP,搜索平台HA3,无线接入层AServer和MTOP,中间件和运维支撑平台,监控系统Sunfire等。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-01-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 春哥talk 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 什么是Lazada?
  • Lazada的原始系统
  • 阿里技术的赋能
  • 新Lazada系统的灰度交付
  • 系统重构赋能未来
  • 阿里中台的胜利
相关产品与服务
项目管理
CODING 项目管理(CODING Project Management,CODING-PM)工具包含迭代管理、需求管理、任务管理、缺陷管理、文件/wiki 等功能,适用于研发团队进行项目管理或敏捷开发实践。结合敏捷研发理念,帮助您对产品进行迭代规划,让每个迭代中的需求、任务、缺陷无障碍沟通流转, 让项目开发过程风险可控,达到可持续性快速迭代。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档