SRE 是有史以来最棒的事

发布: (2026年1月30日 GMT+8 22:38)
7 min read
原文: Dev.to

Source: Dev.to

如果你不知道 SRE 是什么,别担心……我来给你解释。

我是 Jairo Jr.,在 Mercado Livre 担任 Software Engineer,居住在巴西,过去几个月我一直在学习 SRE

SRE 改变了我看待生产环境的方式。

在接触 SRE 之前,我对生产的认知是:

  • ✅ “部署完成”
  • ✅ “功能正常”
  • ✅ “继续下一个任务”

深入了解 SRE 后,我开始把生产环境看成:

“好……但如果它在凌晨 3 点崩溃了怎么办?”

那么……什么是 SRE?

SRE 代表 Site Reliability Engineering(站点可靠性工程)。它起源于 Google 大约在 2003 年,当时他们意识到一个简单的真理:

如果你的产品在增长,问题也会随之增长。

真正的痛点并不是仅仅出现问题(每个系统都会有)。而是要应对:

  • 每周都会出现的问题
  • 破碎的用户体验
  • 压力山大的人们
  • 值班变成噩梦
  • 公司在你像侦探一样调试日志时亏损 🕵️‍♂️

SRE 是一种让软件:

  • ✅ 可扩展
  • ✅ 可靠
  • ✅ 可度量
  • ✅ 更少“随机” 的方法

SRE 并非只是带有花哨名称的 DevOps

很多人认为 “SRE 是 DevOps,对吧?” 实际并非如此。SRE 将 DevOps 目标工程思维 结合起来。

与其永远手动解决问题,SRE 会问:

  • “我们能自动化吗?”
  • “我们能预测吗?”
  • “我们能在客户发现之前检测到吗?”
  • “我们能更快恢复吗?”

它将实践从被动响应转向主动预防。

日常示例(真实案例)

想象这样一个经典情形:

  1. 你部署了一个新功能。
  2. 一切看起来正常。
  3. 十分钟后:
    • 延迟飙升 📈
    • 部分请求开始失败
    • 你的指标仪表盘像圣诞树一样 🎄

你可能会听到那句魔法般的话:“对我来说它在正常工作…”,但对用户来说:

❌ 并非如此。

SRE 帮助你快速回答:

  • 到底哪里坏了?
  • 什么时候开始的?
  • 是影响所有人还是只有部分客户?
  • 是我的服务出问题,还是依赖的服务出问题?
  • 有什么变化了吗?
  • 我能多快回滚?

如果没有 SRE 文化,你通常会通过以下方式发现问题:

  • Slack 消息
  • 客户投诉
  • 经理问 “发生了什么?” 😭

SRE 教你衡量可靠性

SRE 以数字为基础。与其说:

❌ “我们的服务非常稳定”

不如说:

✅ “我们的服务是稳定的,因为我们的 SLO 为 99.9 %,且我们仍在误差预算内。”

这使得可靠性成为一个具体的讨论对象,涉及:

  • 工程师
  • 产品团队
  • 经理
  • 业务相关者

所有人都能理解。

SLO 和错误预算(不同之处)

如果你的 SLO 是 每月 99.9 % 可用性,那么你大约可以承受 每月 43 分钟的停机时间。这就是你的 错误预算

经验法则:

  • 在预算内 → 你可以部署更多。
  • 预算已耗尽 → 停止推送风险更高的更改,专注于可靠性。

换句话说,SRE 的建议是:“快速前进…但不要愚蠢地快。”

SRE 是让你不再是英雄的原因

没有 SRE 时,常见的文化会出现:

  • 出现故障。
  • 有人醒来后,修复所有问题,成为“英雄”。

这种陷阱使系统依赖于人类。人类:

  • 会感到疲惫
  • 会犯错
  • 会生病
  • 会休假
  • 会换工作

SRE 推动你构建不需要英雄的系统。这不是关于“谁修复得更快”,而是关于:

  • ✅ 为什么会发生
  • ✅ 我们改进了什么
  • ✅ 我们如何防止再次发生
  • ✅ 我们如何在下次降低影响

值班不是问题(糟糕的值班才是)

值班是工作的一部分,但 糟糕的值班 会毁掉团队。糟糕的值班表现为:

  • 无用的警报不断打扰你
  • 没有运行手册
  • 没有清晰的仪表盘
  • 没有回滚计划
  • 没有负责人
  • 每次事故都像是第一次

优秀的 SRE 通过推动团队构建以下内容,使值班更轻松:

  • 清晰的监控
  • 有意义的警报
  • 快速的恢复流程
  • 完善的事故处理流程

因此团队从“恐慌模式”转向“流程模式”。

真正的目标:保护你的用户

归根结底,用户并不在乎:

  • Kubernetes、Kafka、重试、p95 延迟、缓存失效

他们在乎的是:

  • ✅ 应用能够正常运行
  • ✅ 支付顺利完成
  • ✅ 界面加载迅速
  • ✅ 订单得到确认

SRE 帮助你 每天 都实现这些,而不仅仅是在本地机器上。

为什么我认为 SRE 是有史以来最棒的东西

因为它改变了你的思维方式。

SRE 让你不再只考虑:

🧩 “如何构建这个功能”

而是开始思考:

🔥 “如何让这个功能在生产环境中为数百万用户持续运行”

这是一种不同层次的工程。

Back to Blog

相关文章

阅读更多 »

设计对 AWS 资源的安全访问

考试指南:Solutions Architect – Associate 🛡️ 领域 1 – Design Secure Architectures 📘 任务陈述 1.1 > Secure access 意味着您可以清晰地回答 f...