内容提要
Cloudflare最近重新设计了Workers KV,采用混合存储架构,将全球键值存储的读取延迟从200毫秒降低至5毫秒。这一改进源于2025年6月12日的GCP服务中断,Cloudflare优化了存储系统,结合了自有分布式数据库和R2对象存储,通过大小路由自动处理对象,提高了效率和一致性,以适应高读取负载。
延伸解读
架构变更的背景与意义
Cloudflare在GCP服务中断后重新设计Workers KV,显示了对外部依赖的风险意识。此次架构变更不仅提升了性能,还增强了系统的冗余性,确保在未来可能的服务中断中,能够更好地保障数据的可用性和一致性。
性能提升的实际影响
通过将小对象存储在自有的分布式数据库中,Cloudflare实现了读取延迟的显著降低。这一变化对于以小于1KB对象为主的工作负载尤为重要,企业在处理高并发请求时将享受到更快的响应速度和更低的成本。
一致性问题的解决方案
在内部推广中,Cloudflare发现了读取自己写入(RYOW)一致性的问题。为此,工程师们开发了对抗性测试框架,以确保在高读负载下,系统能够有效处理一致性边界情况,提升了整体的可靠性。
Q&A
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)一致性的问题。