饿了么平台不仅做外卖,还有蜂鸟、早餐和未来餐厅,以及很多其他的一些平台,正处在快速扩张阶段。整个外卖的产品链条长,从用户下单到最后配送到达,时间大概是30分钟左右,对时效性的要求非常强。
从技术的角度来看,饿了么遇到的最大挑战是事故。本文将围绕事故展开,分成两部分内容:技术运营经历与心得。第一部分经历又分为三个阶段:精细化分工、保稳定(容量和变更)和增效。第二部分心得,是作者对运维服务的理解。
一、技术运营经历
技术运营的职责是尽最大的努力协同更多的人来达成保稳定的目标,可以划分为两个阶段:运维保障、运维服务。现在,饿了么处在运维服务的阶段,技术运营团队作为乙方,把开发出来的产品,开发测试后的服务,做维护,保障稳定、调优性能、提高资源的利用率。
在业务快速扩张阶段,技术团队需要做哪些事情呢?
首先,第一阶段,精细化分工。
通过精细化分工促进并行提速,让专业的人利用专业的知识、最有效的工作方式提高工作效率及代码吞吐量,建立沟通渠道加速决策、信息流通保稳定。
精细化分工分为三部分内容:
第一部分是做数据库拆分和代码解耦。技术工作集中在数据库的拆分,先纵向拆分,不得已才做横向拆分,为了更快地服务业务的扩张,又夹杂了一些对代码解耦的工作。
所谓代码解耦,是把原来的代码系统想象成一个泥球,把它逐渐拆分成很多块。现在是有十多个业务模块,每一模块里面都有专门的团队来维护,内部又会划分域。