zoukankan      html  css  js  c++  java
  • 美团配送系统技术演进

    技术挑战

    美团配送系统的本质——机器与海量骑手协作,服务于全国用户和商家的大规模协作系统。技术的挑战本质上源于业务的痛点,具体体现为线上的强履约能力要求与线下的强运营能力要求。技术上的挑战也同样来源于线上和线下两个方面:

    1. 线上履约的SLA要求更高。配送业务需要兼顾用户、商家、骑手三端利益,任何一次宕机的影响都可能是灾难性的。如果体验不好,用户会说,为什么我付了钱,却还饿肚子?商家会说,这是因为出了餐没人取;但是对骑手来说,会觉得自己付出了时间与劳动,却没有获得足够的收益。

    2. 线下的业务复杂性更高。多条业务线管理模式不同,对于如何兼顾系统在共性和差异化上有很大挑战。

    系统架构演进

    美团配送系统架构的演进过程可以分为三个阶段:

    MVP阶段:业务模式探索,快速试错,如何具备快速迭代能力。

    规模化阶段:业务成指数级增长,如何既保证业务发展,又解决系统可用性、扩展性、研发效率等问题。

    精细化阶段:业务模式逐步成熟,运营逐步精细化,如何通过产品技术创新驱动业务发展。

    MVP阶段

    试错阶段,需要快速探索业务模式到底是不是一个方向,这个阶段不要期望很多事情都想得很清楚,用户和市场会快速反馈结果。所以,对于技术团队而言,这个阶段最主要的能力是快。抢夺市场,唯快不破。

    规模化阶段

    进入这个阶段,业务和产品已经得到了市场的初步验证,的确找到了正确的方向。同时,业务发展增速也对研发团队的能力提出了更高的要求,因为这个阶段会有大量紧急且重要的事情涌现,且系统可用性、扩展性方面的问题会逐步凸显,如果处理不当,就会导致系统故障频发、研发效率低下等问题,使研发疲于奔命。

    这个阶段从架构层面我们重点在思考三个方面的问题:

    整体架构应该如何演化?履约系统与运营系统的边界在哪里?

    履约系统的可用性如何保证?系统容量如何规划?

    运营系统如何解决业务的真正痛点?如何在大量“琐碎需求”下提升研发效率?

    解决以上问题的整体思路为化繁为简(理清逻辑关系)、分而治之(专业的人做专业的事)、逐步演进(考虑ROI)。

    精细化阶段

    业务发展不断成熟之后,业务的各类运营管理动作会趋于精细化。这个阶段,业务对于产品技术有更高要求,期望通过产品技术创新不断打造技术壁垒,保持领先优势。配送的业务特点天然对AI应用有很强的需求,大到供给调整,小到资源配置,都是AI发挥效力的主战场。对于工程层面,需要持续思考的问题是如何更好地实现AI的业务应用。为此我们重点提升了几方面的能力:

    降低试错成本:构建仿真平台,打造算法的“沙箱环境”,在线下环境快速评估算法效果。

    提升算法特征迭代效率:构建特征平台,统一算法策略迭代框架与特征数据生产框架,提升特征数据质量。

    提升导航数据质量:持续深耕LBS平台,提升基础数据质量,提供位置、导航、空间的应用能力。

     

  • 相关阅读:
    同步的原则
    我心中的final
    令人"哇"的内部类(一)内部类的设计意义
    令人"哇"的内部类(三)嵌套类
    共享资源问题的解决方案(一)加锁机制
    令人"哇"的内部类(二 )内部类访问外围类
    volatile关键字
    同步控制块
    高质量C++/C 编程指南一
    5、数据表的创建与更新(续)
  • 原文地址:https://www.cnblogs.com/cj-125/p/11058459.html
Copyright © 2011-2022 走看看