IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

标签:Hippo

共 1 篇相关文章

IT 累计浏览 2,879

从未降级的搜索技术-Hippo在线服务调度系统

这篇讲的是,在搜索团队经历了一次手忙脚乱的双11“搬机器”救援后,如何从零开始构建一个真正服务于在线系统的调度平台——Hippo。 故事要从一次教训说起。当年双11,团队为天猫和主搜分别预留了14倍和1倍的资源余量。然而流量突变,主搜压力远超预期,天猫却只涨了4倍。工程师们被迫手动迁移机器来救场,改配置、发数据、起进程,折腾一个半小时才勉强应对。更无奈的是,这种紧急操作往往还未必能准确命中流量高峰。每年大促都像一场无法预演的战役,让运维和开发都身心俱疲。 为了解决这些痛点——资源僵化、扩容迟缓、手动部署风险高,团队调研了当时主流的调度系统。但发现Yarn对于C++在线服务显得笨重,而FUXI和Mesos在资源回收上采用强制策略,可能影响在线服务的稳定性,这与搜索系统“高可用、资源分配稳定”的核心要求相悖。因此,他们决定自研一个专注在线服务的平台。 Hippo采用了两层架构:Master层负责核心的资源管理与调度,而具体的AM层则允许各应用定制自己的调度逻辑。它的设计核心在于保证在线服务的平稳运行:资源回收策略更为柔性,并针对海量数据(如40G索引、多GB模型)的快速分发和部署做了特别优化。这篇文章详细拆解了系统从需求诞生到架构落地的全过程,展示了一个为复杂在线场景量身定制的调度系统是如何思考的。