Lazada 2012年成立于新加坡,是东南亚第一电商,2016年阿里投资10亿美金,2017年完成对lazada的收购。 业务模式上Lazada更偏重自营,相似于亚马逊,自建仓储和为商家提供服务。 在阿里完成对Lazada的收购后,开始对Lazada进行了一系列架构升级,目的是升级为阿里的技术引擎。前端
Lazada初期有两个系统:算法
业务发展过程当中将Bob进行了必定的拆分,其中交易,履约能力沉淀到Oms系统中。 系统总体开发语言为Php,一些新的系统为Go。数据库
这样的架构存在不少问题,如:后端
在阿里对Lazada收购以后,同时考虑到业务形态及所处的软件技术背景,阿里首先将阿里沉淀的无线端和搜索链路进行了阿里技术体系升级。 将用户,商品详情,购物车,订单,退款,履约等系统所有重构,将数据迁移到新系统。网络
阿里在整个架构投入上,首先采用调用精兵强将直接接管新架构的研发,这样能够更好的接入和适配到阿里总体技术栈上。同时整个系统架构交付上,不考虑灰度策略,而是一刀切,开发一个彻底新的系统。架构
这两点对于你们有必定到借鉴做用,在过去几年参与过不少系统的重构或者是技术方案的迁移。若是拖拖拉拉的不投入系统的人力和时间是很难保质保量完成一个重构需求的,同时不少时候在作系统融合过程当中,过多的考虑灰度方案,不只形成技术复杂度升高,可操做性一样下降。框架
在明确了团队和交付方案与交付时间以后,团队背水一战,尽心尽力进行了新Lazada系统的研发。运维
任何一个原有系统的总体架构迁移,势必会存在时间紧,任务重,强度大,复杂度高的问题,首先须要读懂原有解决方案的用意,才能更好的整合多个需求点并进行总体抽象或者合并,这个过程必然设计到不断的重构,融合,下沉。分布式
其次想要将新系统架构的业务能力融合进阿里整个技术层次与技术栈下,须要让技术团队对于阿里体系化分层有清晰的认识,须要对于设计理念和技术体系进行快速的学习与消化。模块化
最后一个系统的完美交付涉及到项目管理相关的能力,对于项目交付和落地能力,我认为一样是一个架构师必备的能力。要求海外与阿里技术人员按照Ticket作事,明确Ticket和设计文档。
在完成了一系列的架构设计,研发投入,相互协做以后,新Lazada系统进入了交付阶段。 整个交付流程涉及到:技术方案设计,功能开发,测试,UAT,割接上线。在整个上线过程当中,为确保系统无问题不影响用户正常使用,须要在凌晨进行上线操做,通宵也是屡见不鲜。
最终,通过6个月的艰苦奋战,Lazada新网站和老系统相比,有了17个电商核心域,包括会员,商品,交易,营销等。有了29个核心模块,包括无线,前端,后端三大部分。
系统后端模块的7个核心系统,即下降系统复杂度,模块的单独拆分也比较容易。 从单IDC,中间件,监控运维,业务系统都采用了阿里中台技术相关解决方案,节约了不少时间成本。 新的APP包括个性化首页和新搜索功能上线以后,系统运行稳定,性能有了很大提高,DAU和GMV都有了200%的增加。
在对Lazada完成了一系列技术重构以后,新的系统架构能够更好对服务于将来的赋能需求。
Lazada的总体架构能够实现快速的重构与赋能,得益于阿里强大的中台能力。阿里在2015年提出了大中台,小前台战略,在Lazada重构过程当中,几十个系统的重写和数据迁移,若是没有阿里强大的中台支持,是不可能完成的。阿里中台是整个重构计划的核心与关键。
阿里中台提供了IDC,网络,机房,操做系统,中间件,数据库,算法平台,数据平台,计算平台,业务平台等一系列技术与产品的支持。
以数据处理为例:
重构系统中,数据工程师将Lazada全部数据,全量倒入阿里计算平台,并计算出通用中间表和分区表,供项目中搜索索引构建,数据迁移,BI报表等多个子项目使用,极大的节约了成本。
阿里的DBA工具,能够轻松支持可视化查询,管理,运维Lazada原有DB集群。
业务中台上采用TMF和星环框架,能够将业务定制和平台逻辑分离,极大提升开发效率。
项目管理工具Aone,能够很好的管理国内外几百位工程师,管理流程,Bug跟踪,让整个项目管理有条不紊。
同时阿里沉淀了大量出海解决方案,对于技术产品出海和国际化部署提供了丰富的保障,好比活动搭建平台斑马,推荐系统TPP,搜索平台HA3,无线接入层AServer和MTOP,中间件和运维支撑平台,监控系统Sunfire等。