写点什么

旅游搜索巨头 SkyScanner 提升系统可观测性,将工程技术成本降低 90%

作者:Matt Saunders

  • 2025-05-27
    北京
  • 本文字数:1705 字

    阅读完需:约 6 分钟

大小:835.99K时长:04:45
旅游搜索巨头SkyScanner提升系统可观测性,将工程技术成本降低90%

新冠疫情为旅游搜索巨头Skyscanner的工程团队提供了一个审视其可观测性技术栈的机会。Skyscanner 曾撰文分享他们如何通过一个系统彻底改造其技术可观测性技术栈,提升了工程师的工作效率和旅行者的用户体验。


根据最近发表的一篇工程博文,Skyscanner 于 2020 年开始了这一转型之旅,当时旅游业处于停滞状态,面临着前所未有的中断。Skyscanner 的工程团队抓住这一特殊时期,深入挖掘并修复了其监控系统中的薄弱环节。


Skyscanner 工程团队在博文中写道:“我们面临的挑战远不止是成本问题,也不仅仅是小团队运营该平台的复杂性。我们明白,我们需要解决的最重要的问题是提升全体工程师对其服务的理解和操作能力,增强他们的信心,然后可靠地将 1.1 亿用户与每月超过 1200 个航班、酒店和租车合作伙伴联系起来。”


Skyscanner 之前的可观测性架构较为复杂,包含了一些专业供应商提供的系统和基于开源技术(如 OpenTSDB、Prometheus 和多个ELK技术栈)的内部系统。这种碎片化的架构给需要跨平台理解和解决这些问题的工程师造成了麻烦。



为了应对这些挑战,Skyscanner 制定了一项新的战略,围绕两个关键原则展开:采用 OpenTelemetry 作为服务监控和数据传输的统一标准,并将 New Relic 作为统一的数据存储和分析后端。


我们全力支持 OpenTelemetry 所倡导的高质量、标准化、可移植且无处不在的遥测愿景。展望未来,它将是 OpenTelemetry 原生的,而非依赖 APM 代理,我们已经为此做好了准备。


OpenTracing 和 OpenTelemetry 的 API 设计简洁明了,这使得 Skyscanner 能够在短短几周内通过简单地升级库的版本号迁移超过 300 个微服务。这迅速降低了工程师的认知负担,消除了在多个可观测性平台之间切换上下文的需求。标准化还为跨服务和框架更好地关联跟踪信息、指标、日志和事件带来了可能性。


一个令人意想不到的结果是团队在遥测方面的方法发生了文化层面的转变。当意识到数据收集和存储需要耗费的成本时,许多团队主动寻找更高效的方法。


工程团队表示:“我们发现一些团队希望找到更优的遥测使用方式。当他们亲眼目睹这些新方法带来的好处后,他们被说服了,并开始依赖跟踪信息,而不是冗长的日志记录或高基数指标。一些团队因此将他们的遥测成本降低了超过 90%!”


为了进一步推广新的可观测性技术栈,Skyscanner 启动了“可观测性大使”计划,在团队中发掘能够将可观测性最佳实践引入其领域的工程师。Skyscanner 还举办使用官方 OpenTelemetry 演示的可观测性游戏日,使系统调试变得更加有趣和吸引人。



Skyscanner 还重新审视其服务等级目标(SLO)实现方案,将技术可观测性方面的新能力与影响旅行客户的实际业务结果联系起来。Skyscanner 不再只关注 API 响应代码等技术指标,还从直接与用户体验相关的信号中驱动 SLO。


通过访问客户端遥测数据,我们可以从直接与我们的用户相关的信号中驱动 SLO,例如“有多少次航班搜索显示了有效结果?”


这种新的可观测性方法彻底改变了 Skyscanner 管理跨领域依赖关系和促进团队协作的方式。“我们不仅将可观测性用作技术工具,还作为社会技术工具,帮助我们理解我们的系统并做出数据驱动的决策,”工程团队总结道,“我们基于证据做出承诺,而不是基于直觉。”


Skyscanner 并不是唯一一家利用 OpenTelemetry 重新定义 SLO 驱动方式的公司。NOFire AI 的一篇文章进一步丰富了这方面的主题,特别是在 OpenTelemetry 的变革性影响以及从传统监控向智能可观测性转变方面。这篇文章还强调了 OpenTelemetry 如何通过消除碎片化、孤立的方法来实现统一的可观测性,这些孤立的方法此前对于组织来说并无助益。NOFire 认为,服务等级目标应该关注用户体验,而不是技术指标,这与 Skyscanner 从关注 API 响应代码转向以用户为中心的有意义信号(例如“有多少次航班搜索显示了有效结果?”)的转变不谋而合。


NOFire 还进一步引入了 AI 驱动的事件解决机制。Skyscanner 通过以人为中心的举措(例如“可观测性大使”计划)实现文化层面的转型,而 NOFire 建议使用生成式 AI 自动发现根本原因并生成可操作的解决方案,这可能会消除对手动仪表盘探索的需求,而手动探索正是这两家公司都面临的痛点。


【声明:本文由 InfoQ 翻译,未经许可禁止转载。】


查看英文原文https://www.infoq.com/news/2025/05/skyscanner-observability/

2025-05-27 19:004844

评论

发布
暂无评论

我看JAVA 之 JVM

awen

Java JVM

企业想要升级生产管理系统,有哪些好用的低代码平台推荐?

优秀

低代码

4面字节跳动拿到Offer,灵魂拷问

欢喜学安卓

android 程序员 面试 移动开发

仿imtoken钱包源码开发,imtoken去中心化钱包开发

阿里云中间件首席架构师李小平:企业为什么需要云原生?

阿里巴巴云原生

七牛云 霍锴:SDK 是一款技术服务的门面,如何方便用户高效接入是前提|Meetup 讲师专访

七牛云

音视频 sdk Meetup

为什么vacuum后表还是继续膨胀?

华为云开发者联盟

索引 GaussDB 元组 VACUUM 行存表

网络攻防学习笔记 Day54

穿过生命散发芬芳

网络攻防 6月日更

Github上星标85k的,图解操作系统、网络、计算机 PDF,竟是阿里的?

Java架构师迁哥

看完阿里开源笔记,我终于敢说精通“网络协议”了

Java架构师迁哥

CloudQuery 使用教程之《No.1 基础入门》

BinTools图尔兹

数据库 程序员 dba 国产数据库 运维开发

最强大的内在激励:自我承诺

石云升

激励 职场经验 管理经验 6月日更

Visual Studio 2010下ASPX页面的TreeView控件循环遍历

吴脑的键客

C#

限量!Alibaba首发“Java成长笔记”,差距不止一点点

Java 编程 程序员 架构 面试

腾讯同事内推的那位Linux C/C++后端开发同学面试没过......

Linux服务器开发

Linux C/C++ Linux服务器开发 Linux后台开发 Linux网络编程

数据校检

若尘

计算机组成原理 6月日更

与8090创业者、投资人共话“初心”!2021中国新青年创业投资峰会举办

创业邦

Python接口自动化之常见用例读取方法介绍

行者AI

测试 #python

Flutter&Dart Callback转同步

小呆呆666

flutter ios android 大前端

一周信创舆情观察(6.14~6.20)

统小信uos

蜜雪冰城主题曲血洗B站:企业自媒体运营如何接地气

石头IT视角

Quick BI的可视分析之路

瓴羊企业智能服务

阿里云 数据中台 数据分析 数据可视化 商业分析

自定义 View 功能上线,你的小程序可以更多变

蚂蚁集团移动开发平台 mPaaS

小程序 mPaaS 自定义控件

windows11泄露版尝鲜体验新功能!!!

学神来啦

win10 win11 windows10 windows 11

4个改变你编程技能的小技巧,建议细读

欢喜学安卓

android 程序员 面试 移动开发

Flutter Webview添加Cookie的正确姿势

小呆呆666

flutter ios android 大前端

fish_redux使用详解---看完就会用!

小呆呆666

flutter ios android 大前端 社区

空手撸SOLID架构设计原则,六大原则层层解析,你绝想不到

Java MySQL 程序员

与其摸鱼,不如来看:高性能消息中间件NSQ解析的整体介绍

用node写个简单的脚手架!

Node cli

WasmEdge (曾用名 SSVM) 成为 CNCF 沙箱项目

WasmEdge

云计算 云原生 webassembly cncf

旅游搜索巨头SkyScanner提升系统可观测性,将工程技术成本降低90%_后端_InfoQ精选文章