Cloudflare在GCP服务中断后重新架构Workers KV,实现40倍性能提升

Cloudflare在GCP服务中断后重新架构Workers KV,实现40倍性能提升

💡 原文英文,约600词,阅读约需2分钟。
📝

内容提要

Cloudflare最近重新设计了Workers KV,采用混合存储架构,将全球键值存储的读取延迟从200毫秒降低至5毫秒。这一改进源于2025年6月12日的GCP服务中断,Cloudflare优化了存储系统,结合了自有分布式数据库和R2对象存储,通过大小路由自动处理对象,提高了效率和一致性,以适应高读取负载。

🎯

关键要点

  • Cloudflare重新设计了Workers KV,采用混合存储架构,读取延迟从200毫秒降低至5毫秒。

  • 这一改进是响应2025年6月12日GCP服务中断,优化了存储系统。

  • 新系统结合了Cloudflare自有的分布式数据库和R2对象存储,通过大小路由自动处理对象。

  • 小对象(中位数大小为288字节)存储在Cloudflare的分布式数据库中,较大对象则路由到R2对象存储。

  • Cloudflare工程师指出,针对以小于1KB对象为主的工作负载,数据库存储比传统对象存储更高效和经济。

  • 系统同时写入两个后端,成功时返回第一个后端确认持久化的结果,失败的写入会排队进行后台协调。

  • 每个键值对包含高精度时间戳,以确定独立存储提供者之间的正确顺序。

  • 在内部客户的初步推广中,Cloudflare发现了读取自己写入(RYOW)一致性的问题,并开发了对抗性测试框架来解决。

  • 架构变化带来了显著的性能提升和冗余,内部读取的p99延迟降至5毫秒。

  • Workers KV是Cloudflare的最终一致性键值存储,广泛应用于配置数据、会话信息和静态资产的快速分布式存储。

🔎

延伸解读

架构变更的背景与意义

Cloudflare在GCP服务中断后重新设计Workers KV,显示了对外部依赖的风险意识。此次架构变更不仅提升了性能,还增强了系统的冗余性,确保在未来可能的服务中断中,能够更好地保障数据的可用性和一致性。

性能提升的实际影响

通过将小对象存储在自有的分布式数据库中,Cloudflare实现了读取延迟的显著降低。这一变化对于以小于1KB对象为主的工作负载尤为重要,企业在处理高并发请求时将享受到更快的响应速度和更低的成本。

一致性问题的解决方案

在内部推广中,Cloudflare发现了读取自己写入(RYOW)一致性的问题。为此,工程师们开发了对抗性测试框架,以确保在高读负载下,系统能够有效处理一致性边界情况,提升了整体的可靠性。

延伸问答

Cloudflare如何改进Workers KV的性能?

Cloudflare通过重新设计Workers KV,采用混合存储架构,将读取延迟从200毫秒降低至5毫秒。

GCP服务中断对Cloudflare的影响是什么?

GCP服务中断导致Cloudflare重新架构Workers KV,以减少对外部依赖的风险。

Workers KV的新架构是如何处理不同大小对象的?

新架构通过大小路由将小对象存储在Cloudflare的分布式数据库中,而较大对象则路由到R2对象存储。

Cloudflare是如何确保数据一致性的?

Cloudflare通过同时写入两个后端并使用高精度时间戳来确保数据一致性。

Workers KV的主要应用场景有哪些?

Workers KV广泛应用于配置数据、会话信息、静态资产存储、API网关、用户认证等场景。

Cloudflare如何解决读取自己写入的一致性问题?

Cloudflare开发了对抗性测试框架,以解决读取自己写入(RYOW)一致性的问题。

🏷️

标签

➡️

继续阅读