【供应链架构day1】美团IT系统在千团大战、两雄争霸中取胜之道

本文讲述了美团在千团大战和两雄争霸时期,如何通过技术架构和业务架构的优化取得竞争优势。早期采用简单的LAMP架构,随着业务发展,逐渐演变为复杂的技术组件化和业务组件化架构。在业务架构优化方面,通过把复杂的事情简单化、标准化、流程化和自动化,实现了效率提升。技术不仅在优化线上流程,也在改善线下商家和用户体验,例如外卖打印机和用户画像技术的应用。
摘要由CSDN通过智能技术生成

按:2010到2013年是千团大战时期,2013到2015年是美团与大众点评两雄争霸。当大众点评每天还在小编一两单的时候,美团的销售已经拿着App在自己上单、当天上当天发。团购的供给和CRM IT系统在这两场大战中帮助甚大。

 

本文来自美团夏华夏老师的分享,一个大佬级人物,主要分成三个大部分:

  1. 美团的技术架构,架构是如何演变的。

  2. 美团的业务架构,在业务方面如何做一些业务流程的优化。

  3. O2O技术,如何实现线上和线下都用技术来做优化贯通的。

技术架构

其实在初期的时候,美团的技术架构非常简单,的确在最初2010年、2011年的时候,技术是没有门槛的,任何一个人都可以写一个电商的网站。

图1 最初的技术架构

这就是一个最初期的架构,一个比较典型的LAMP架构,前端加上Apache/PHP,后端是MySQL,当然我们会有一些运维的工作在里面。可能大家如果自己写个网站的话,一开始都是这种架构,这种架构一开始也很好用。然后慢慢的,当业务量大了之后,我们发现整个系统的性能跟不上。那时候我们也只是做一些简单的优化就够了,比如说一开始我们是在前端,就是在Nginx和Apache之间加一些Varnish的缓存,然后在后端,我们可能用Memcached来减少MySQL的压力,这些都是缓存,整个架构还是没有太大的变化,还是一个优化了的LAMP架构。

图2 简单优化

然后到2011年的时候,我们开始做移动端,这时候架构还是没有太大的变化,只不过是在Apache这种已有服务的API前面,又包了一层。就是我们在提供给PC端的同时,我们也包了一层移动的API,这样我们可以继续给手机端的用户提供服务。

图3 2011年的架构

这个时候其实也就是简单地把LAMP架构做了一点点扩展,但是已经可以支撑很多很多的用户,很多很多的容量了。我们在这种架构的前提下发展,直到我们想去做新的业务。美团一开始起步是个团购公司,后来我们去做一些新的,比如说酒店业务、电影业务,直到现在大家可能使用过的美团外卖的业务。

当我们去做很多不同的业务的时候,我们发现做每一个业务似乎需要添加一些新的部分,这样一个部分、一个部分堆积,对很多技术的同学来说,这是不能容忍的,那我们怎么去改进它呢?我们希望把中间的很多的公共的东西,与业务无关的东西抽取出来,形成一些公共的技术的组件,这样可以为很多的不同的业务来使用,发展到现在,形成这样一个看起来稍微复杂的架构。

图4 现在的技术架构

在最底层会有云平台,对内对外都有服务,会有云主机、云存储、虚拟网络,包括一些负载均衡的东西。在云平台上面,我们会有一些基础的组件,这些基础组件跟业务的逻辑相隔比较远,它会有比如配置,队列中心,注册中心,包括一些SQL和NoSQL的存储等等,这些技术组件我们在所有的业务里都会使用,所以我们把它提取出来,作为我们的技术组件提供给业务能用。

再往上,确实有一些东西是与业务结合比较多,比如说用户中心、支付、搜索、推荐、风险控制,以及建立用户的一些地理位置的库,这些东西是与业务是有交互的。但是我们去分析之后发现在不同的业务里面,这些组件还是差不多的,所以我们也是把它抽象出来,现在叫业务组件,这些业务组件在所有的业务之间也是共用。

再往上才是我们各个不同的业务的,真正的比较独特的一些逻辑。在这些业务逻辑前面,是前端的接入,这个前端接入其实对不同的业务也是一样的,它会有前端的接入和转发,会有前端内容的过滤,就是一些防抓取,防攻击这样的内容过滤。

比如说为了做用户访问性能的优化,我们会做大量的各种各样内容的缓存,包括CDN也好,包括我们内部不同层次之间,包括一些验证码的服务。所以在这种架构下面,当我们再要去做一个新的业务的时候,我们就关注在中间业务逻辑这一块就可以了,这样可以很快地去拓展新的业务逻辑,而且每一个人,每一个团队,只关注真正最有价值的那一部分的软件的开发。那当然两边会有我们的,运维的工作,安全的工作,是在每一层都会涉及的。

但是整个这样一个逻辑发展到现在,我们是觉得最适合我们美团现在这个阶段的一套技术架构,那从一开始的最简单的LAMP,到现在可能我们分了很多很多个组件、很多很多层,这些架构看起来是非常非常不一样的。但是我们现在回想起来并不觉得说,原来的就不好,现在的就好。

我们觉得在公司发展的不同的阶段,一开始就最适合那种最简单的情况,如果说我们一开始,比如说美团2010年成立的时候就上这种很复杂的架构的话,那可能我们2010年底才把软件开发完,那时候上线的时候,可能已经有五千多家团购网站在线上了,所以这是不切实际的。所以整体来说,我们觉得在整个技术架构的演变过程中,就是找当前真正能够满足我们业务需求的。

另外一个特点,大家也可以看到,在我们的整个的架构里面,大量应用了一些开源的东西,从最初的LAMP架构的时候,包括MySQL、Apache,到现在我们一些很复杂的架构里面,比如说搜索,现在会用到Lucene,会用到Solr,在云主机、云平台这一块,我们会用到比如说OpenStack的一些个组件,包括比如存储的Swift等等,用到很多的开源的东西。

开源产品拿过来当然会加速我们的这种开发

  • 7
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值