简体中文
  • 事后分析

事后分析:Logto 认证服务中断事件

2025 年 6 月 12 日,受影响请求路由的 Cloudflare 故障导致 `logto.app` 上的 Logto 服务短暂中断。该问题很快得到解决,数据安全和核心服务未受影响。

Gao
Gao
Founder

不要在用户认证上浪费数周时间
使用 Logto 更快地发布安全应用。几分钟内集成用户认证,专注于您的核心产品。
立即开始
Product screenshot

事件概述

在 2025 年 6 月 12 日 18:07 至 18:58 UTC 期间,通过 logto.app 域名(包括自定义域名)访问 Logto 服务的用户遇到了错误。这次中断是由于 Cloudflare Workers KV 故障,影响了我们的路由层。使用直接 DNS 解析且不依赖 Cloudflare Workers 的 Logto Cloud 服务和 Logto Console 未受到影响。服务在一小时内恢复,且数据安全未受影响。

时间轴 (UTC)

  • 18:07:通过 logto.app 的请求,Logto 认证服务 API 开始返回 500 错误。
  • 18:24:调查确认 Azure 后端健康,问题被定位于 Cloudflare Workers 和 KV。
  • 18:48:Cloudflare 官方确认 Workers 和 KV 出现故障。
  • 18:58:我们通过移除缓存逻辑部署了临时解决方案,服务恢复,但可能有轻微的性能下降。
  • 21:00:Cloudflare 服务恢复稳定后,我们带有优雅降级的缓存逻辑重新上线。性能完全恢复,服务现在对类似 KV 故障具有更强韧性。

根本原因

此次事件是由于 Cloudflare Workers KV 的宕机引发的。我们的 Cloudflare Worker 会为每个租户或域名将请求路由到正确的 Logto 区域,以确保数据驻留和合规。为提升性能,Worker 使用 KV 缓存这些区域映射。当 KV 不可用时,缓存操作失败,Worker 抛出了错误,而不是切换为无缓存行为,导致服务中断。

Logto Cloud 服务和 Logto Console 未受影响,因为它们依赖直接 DNS 解析,不使用 Cloudflare Workers 进行路由。

解决方案与改进措施

  • 移除了 Worker 的缓存依赖,恢复服务。
  • Cloudflare KV 恢复后,重新上线带有优雅降级的缓存逻辑。如果缓存不可用,服务将继续使用直接路由,不会中断。
  • 持续优化基础设施,进一步提升韧性和可用性。

影响

  • 通过 logto.app 访问 Logto 的用户约 50 分钟内遇到错误。
  • 客户数据未丢失也未泄露。
  • Logto Cloud 服务和 Logto Console 始终保持完全可用。

后续计划

  • 我们将审查并优化边缘基础设施中的错误处理能力。
  • 我们会探索采用多家上游供应商,以避免单点故障。

感谢你的耐心和支持。