很多人第一次接触 Cloudflare R2,都会被一句话打动:零出口费(Zero Egress)。
这确实是 R2 最有竞争力的卖点之一,但如果你只看这一个点,选型很容易跑偏。对象存储的总成本和可用性,除了流量费,还取决于请求模型、功能兼容性、数据合规要求和团队运维习惯。
这篇文章不吹不黑,只回答一个问题:
R2 到底适不适合你用?
(注:本文价格与能力描述基于 Cloudflare 官方文档,核对时间为 2026 年 2 月 15 日。)
R2 是 Cloudflare 的对象存储服务,支持 S3 API。你可以把它理解为“更偏分发友好、与 Cloudflare 生态深度集成的 S3 兼容存储层”。
它非常适合作为:
但它不是数据库,也不是搜索引擎,更不是所有 S3 场景的 1:1 替代品。
R2 最大优势是对互联网下行流量不单独收 egress 费用。这对以下场景很有价值:
如果你的业务“读多写少、下载量大”,R2 常常能显著降低总账单焦虑。
截至 2026-02-15,官方价格页显示:
$0.015 / GB-month$4.50 / 百万请求$0.36 / 百万请求10 GB 存储 + 100 万 Class A + 1000 万 Class B对个人博客、作品集、轻量 SaaS 来说,这个免费层已经能覆盖不少早期阶段。
R2 不是“孤立存储桶”,而是能直接接入 Cloudflare 一整套边缘能力:
这让“上传-鉴权-处理-分发”能在同一平台闭环,开发和运维路径都更短。
官方文档明确给出:
对于大多数互联网业务,这组指标是可用的工程基线。
对于有合规要求的项目,R2 支持:
eu、fedramp)如果你要处理欧盟用户数据,或者有明确数据驻留约束,这类能力非常关键。
很多团队会忽略请求成本。R2 的计费并不只看存储量,还看操作类型:
如果你的业务有大量小文件读取、频繁列举目录、频繁元数据探测,账单可能主要花在请求数而不是存储本身。
一句话:高 QPS 小对象场景,别只盯 egress。
R2 的 IA(低频访问)确实更便宜,但有两个代价:
如果你对象生命周期短、删改频繁,IA 不一定省钱,甚至可能更贵。
R2 支持 S3 API,但官方也明确“仍在持续补齐”。截至当前文档,仍有多项 S3 能力未实现或部分实现,例如部分 ACL、版本化、对象锁相关操作与若干 bucket 级接口。
这意味着:
否则上线后才发现“不支持”,返工成本很高。
r2.dev 仅适合开发测试,不适合生产流量官方文档明确写了:r2.dev 有可变限流,定位是开发用途。
生产环境应使用自定义域名访问 R2,才能获得更稳的性能与完整的 Cloudflare 能力(缓存、WAF、规则等)。
R2 本身是强一致,但你一旦挂上 CDN 缓存,会出现典型缓存语义问题:
这不是 R2 坏了,而是缓存策略没配好。需要配套做 TTL 设计与 purge 策略。
如果你符合以下特征,R2 通常很适合:
你可能需要谨慎,甚至优先考虑其他方案:
R2 不是“所有对象存储的终极答案”,但它在以下组合里非常强:
如果你的业务确实匹配这三点,R2 往往是高性价比且工程效率很高的选择。
反过来,如果你依赖极深的 S3 高级能力,或请求模式高度偏“高频元操作”,那就别只看“零出口费”这一个卖点。
选型不是找“最强产品”,而是找“与你的业务形状最匹配的产品”。