本指南为架构师和开发人员介绍了一种全面的第 7 层 (L7) 应用性能策略。在当今竞争激烈的数字化格局中,应用性能是关键的业务差异化优势。然而,最终目标是找到性能与安全之间的平衡点。
虽然本指南重点在于最大化速度和用户体验 (UX),性能不能以牺牲安全为代价。架构师必须在减少延迟与严格安全控制(例如 DDoS 防护、WAF 和 Bot Management)所必需的处理开销之间取得平衡。
在高风险场景中,安全必须优先,通过这些性能优化获得的“延迟预算”将进行战略性地再投资以支持必要的保护,从而确保应用既足够快以转化用户,又足够安全以保护业务。
| 关键业务指标 | 为什么重要 |
|---|---|
| 用户参与度与留存率 | 第一印象与流失率: 快速加载的网站是良好用户体验的基础。当今的用户期望即时获取信息,研究也强调了这一点:如果网站加载时间过长 ↗,很大一部分用户会放弃访问,这直接增加了跳出率。 |
| 创收与转化率 | 直接的业务影响: Web 性能直接影响网站的转化率(即完成期望操作(如购买或订阅新闻通讯)的访客比例)。更快的网站能带来更高的转化率;例如,一项研究 ↗发现,即使首页加载时间缩短 100 毫秒,转化率也会提高 1.11%。 |
| 有机可见度与搜索排名 | 流量获取与权威度: 搜索引擎优化 (SEO) 是像 Google 这样的搜索引擎将页面速度作为排名因素的方式。加载速度较快的网站往往在搜索结果中排名更高,从而带来更多的有机流量。Google 的 Core Web Vitals (CWV) 是一组衡量页面加载速度、交互性和视觉稳定性的指标,所有这些都与性能直接相关,并且可以显著提升网站的搜索引擎排名。 |
| 高速交付与可靠性 | 用户体验与信任度: 该指标结合了高下载成功率(可用性/弹性)与最大下载吞吐量(速度)。对于软件、视频或 AI 模型等关键任务资产,它可确保用户快速且可靠地获取文件,从而直接影响产品可用性和客户信任度,尤其是在流量高峰期间。 |
| 边缘效率与成本控制 | 降低运营成本: 该指标主要通过大文件的缓存命中率 (CHR) 来衡量。最大化 CHR 可以分流源站的流量,这是最小化基础设施负载并实现显著的数据流出成本降低(例如,通过 Bandwidth Alliance ↗)的关键驱动力,从而直接转化为更低的运营成本和更高的业务利润。 |
衡量影响:虽然营销仪表板(例如,Google Analytics)跟踪业务结果,但 Cloudflare Web Analytics 和 Observatory 衡量性能驱动因素。使用它们将实时的 Core Web Vitals (CWV) 和真实用户监控 (RUM) 改进与降低的跳出率和更高的转化率直接关联起来,而无需牺牲隐私或依赖繁重的客户端脚本。
通过采用此架构,组织可以预期:
- 改善 Core Web Vitals (CWV)(如 LCP 和 INP),这有助于降低跳出率并推动销售。
- 最大化缓存命中率,从而分流源站流量,减少基础设施开支,并从整体上降低运营成本。
- 即使在流量高峰期间,也能确保高可用性/可用时间以及业务弹性。
衡量性能非常棘手 ↗,它服务于更广泛的业务背景,在此背景下安全和合规性 ↗往往是不可协商的前提条件。组织通常需要验证其架构是否符合监管标准(例如数据驻留 ↗或加密协议,包括后量子密码学 (PQC)),然后才会释放性能能力。
一旦确立了这些安全和合规性基线,有效的优化就始于衡量“正确”的事物——有趣的是,这对每个人来说都略有不同。尽管如此,大多数人都同意应关注以用户为中心的网站性能指标,将 TTFB 作为服务器响应速度的诊断工具 ↗,但在衡量用户体验时优先考虑 Core Web Vitals (CWV) ↗。
成功实施由以下指标衡量:
| 指标 | 目标(第 75 百分位数) | 衡量内容 |
|---|---|---|
| Largest Contentful Paint (LCP) | < 2.5 s | 加载性能(主角图片/文本的可见性)。 |
| Interaction to Next Paint (INP) | < 200 ms | 交互性与对输入的响应速度。 |
| Cumulative Layout Shift (CLS) | < 0.1 | 视觉稳定性(意外的布局偏移)。 |
| Time to First Byte (TTFB) | < 800 ms | 服务器响应速度(网络 + 处理时间)。通过利用如 cf.timings.origin_ttfb_msec 等字段来隔离源站延迟与网络开销,从而获得对连接性能的深入可见性。 |
第 75 百分位数的指标是基于先前的分析 ↗以实现合理的平衡。
此图说明了请求的生命周期,突出了 Cloudflare 的各层/ 阶段(phase) —— 网络、优化、缓存和源站连接 —— 如何协同工作以最小化延迟。

出于演示目的,该架构被组织为四个逻辑层,并遵循特定的阶段。要实现最佳的总体性能,需要优化此链条中的每一步。
性能之旅始于客户端设备。设备硬件、浏览器 ↗、网络质量和拓扑结构决定了初始响应能力。这里的目标是与 Cloudflare 网络建立尽可能快的连接。
- DNS 解析: 客户端设备查询域名,依次通过公共 DNS 解析器,并最终到达权威 DNS 服务器。Cloudflare 的全球 anycast 网络 ↗将请求路由到最近的入网点 (PoP),而全球 DNS ↗解析可确保最小的查找延迟,包括扩展到中国大陆的可能性。
- 连接建立: 客户端使用 HTTP/3 (QUIC) 和 TLS 1.3 通过 IPv4/IPv6 建立连接——这也支持后量子密码学 (PQC)。如果客户端之前访问过,0-RTT 连接恢复可消除握手期间的往返。此外,HTTP Strict Transport Security (HSTS)强制执行浏览器端重定向到 HTTPS,从而消除了不必要的服务器往返。通常建议强制 HTTPS 连接。此外,通过利用相关的 TCP 字段,您可以实施自适应性能策略。
- 浏览器优化: 像 Speed Brain (Speculation Rules API) 这样的功能会主动预取资源,而 Early Hints会在“服务器思考时间”期间向浏览器发送链接标头,从而加速页面渲染。
- 第三方分流: Zaraz 将第三方工具(如 Google Analytics 4 或 Mixpanel) 分流到云端。这减少了设备上的主线程阻塞,显著改善了 INP。
- Web Analytics (RUM): 利用 Cloudflare Web Analytics 直接从用户的浏览器收集隐私第一、无 cookie 的性能数据。这个轻量级 JavaScript 信标提供关于 Core Web Vitals (LCP, INP, CLS) 的真实洞察,而不会跟踪用户或存储客户端状态。

一旦请求到达网络边缘,Cloudflare 会在内容被提供服务或从缓存中提取之前对其进行处理和优化。
- 流量管理: 检查请求。URL 规范化可确保一致性,而重定向规则或变换规则可高效处理路径修改。Waiting Room在海量流量激增期间保护后端,维持可用性。
- 编程式自定义: 对于标准规则不足的先进用例,Snippets 和 Workers允许进行编程式自定义。这使得能够执行自定义代码逻辑以直接在边缘修改标头、重写 URL、进行图像优化,或实现独特的缓存逻辑。利用服务绑定(service binding)来促进这些 Worker 之间的低延迟、零开销通信。
- 内容优化: 文本资产使用压缩规则 (Brotli/Gzip) 进行压缩。图像通过图像转换或 Polish进行即时处理,以确保以适合设备的最佳格式 (AVIF/WebP) 和尺寸进行分发,从而显著改善 LCP 和 CLS。
- 字体与标签优化: Cloudflare Fonts 通过从域名内联分发字体,消除了对 Google Fonts 的 DNS 查询和 TLS 连接。Google Tag Gateway改善了广告信号测量和隐私。
- 路由、可用性与协议智能: Cloudflare 运营着世界上互联性最强的网络 ↗之一,与超过 13,000 个网络建立对等互联,运营着全球骨干网 ↗,并参与了全球领先数量的互联网交换中心 (IXP) ↗。我们利用从这个海量数据集中获得的独特智能 ↗,在协议级别动态优化拥塞控制 (CC)——根据实时网络状况为每个连接自动选择最佳算法并调整适当的参数。对于无法缓存的动态请求,Argo Smart Routing 可寻找到达源站的最快网络路径。自定义错误在发生故障时提供一致的品牌体验。

Cloudflare 可以组织成特定的拓扑结构。该层处理内容的留存和检索。它充当源站的盾牌和客户端的高速存储库。
- 缓存逻辑: 源站缓存控制标头、缓存规则和缓存级别允许对 TTL 和查询字符串处理进行精确控制。实施缓存规范化策略,将包含可变 URL 的请求(例如具有不同营销或 SEO 参数的请求)整合到单个缓存键(Cache Key)中,从而显著提高缓存命中率。预取 URL可以通过清单文件用关键资产预先填充缓存,以进一步降低延迟。注意默认的缓存行为和限制。
- 分层缓存(Tiered Caching): 如果内容不在本地 PoP 上,Cloudflare 会检查上层缓存拓扑。Smart Tiered Caching 和 Regional Tiered Cache 集中连接,提高缓存命中率并减轻全球源站的负载。对于更定制的方法,Enterprise 客户可以选择 Custom Tiered Cache 拓扑结构。
- 专用长期缓存: Cache Reserve 通过将不经常访问的内容移至持久对象存储后端(由 R2 提供支持),延长了大型、不经常访问的资产(例如图像、存档视频、软件更新或静态 AI 模型)的寿命。这可以防止由于最近最少使用 (LRU)算法而被驱逐,并避免引起延迟的源站提取,同时支持存储冗余和弹性要求。
- 即时清除(Instant Purge): 利用 Cloudflare 的去中心化清除架构 ↗在约 150 毫秒内使全球内容失效。这种即时清除功能支持各种细粒度方法——包括按 URL、标签(Tag)、前缀(Prefix)或主机名(Hostname)清除——确保用户立即收到新鲜内容,而无需等待 TTL 到期。
- 云连接: Cloud Connector Rules 简化了将流量路由到公共云提供商(AWS、Azure、GCP)的过程,以满足特定的对象存储或源站需求。对于私有基础设施,Workers VPC 支持与公共云(例如 AWS、Azure)上的私有存储端点或数据库的直接连接,而无需将它们暴露给公共互联网。
- 静态资产托管: 应用的整个部分(前端资产、图像,包括大型媒体文件、软件包)可以直接存储在 R2 对象存储 或 Workers 静态资产中,直接从边缘提供服务,而无需访问传统的源服务器。还提供其他存储选项。

对于必须遍历完整路径的请求(即动态内容或缓存未命中),源站配置决定了最终的延迟影响。架构师在此处有两条主要路径:采用高效、有弹性的 serverless 模型(也称为无源站模型),或者为传统的源服务器(Origin Server)优化连接和安全性。
Serverless: Cloudflare 的开发者平台通过启用“无源站(originless)”模型实现了最佳的性能层。全栈应用直接在全球边缘网络上构建和部署,消除了向遥远源站的完整路径遍历。动态请求在最近的 Cloudflare PoP 执行,并提供对集成边缘存储解决方案(如 R2 对象存储和 D1 Serverless SQLite 数据库)的无缝访问。这极大地降低了 TTFB,并对进取的 CWV 目标做出了重大贡献。此外,利用 Workers 和 R2 的这种无源站模型是高性能文件分发的最佳设计,消除了传统后端服务器交付大型数据集和媒体的需求。
传统源站优化: 对于无法重构或现代化 ↗为无源站模型的应用,需要进行以下优化以最小化传统基础设施带来的延迟影响:
- 连接性: Cloudflare 使用 HTTP/2 to Origin 进行连接,利用连接复用在单个持久连接上多路复用请求,减少 TCP/TLS 开销。为了增强可靠性和安全性,Cloudflare Network Interconnect (CNI) 允许您将网络基础设施直接连接到 Cloudflare——绕过公共互联网——以获得更高效、更安全的体验。此外,利用 Bandwidth Alliance ↗(包括 Microsoft Azure 路由偏好 ↗等合作伙伴)可以显著减少或免除数据流出费用。
- 私有基础设施: Workers VPC 和 Cloudflare Tunnel 支持与公共云上的私有存储端点或数据库的直接连接,而无需将它们暴露给公共互联网。
- 负载均衡: 使用 Cloudflare 负载均衡将流量分配到健康的服务器。如果源站发生故障,流量会立即重新路由到健康的服务器池。或者,可以使用 Round-Robin DNS 来实现更简单的分配策略。

持续监控和测试可以验证每项优化。测量和日志记录能够确认实际收益,尽早发现退化,并在边缘情况影响客户端之前很久将其暴露出来。
分析这些数据时,务必考虑连接限制和 TCP 连接行为,同时还要考虑 Cloudflare 爬网程序和 /cdn-cgi/ 端点,以及 Cloudflare 与 Google Analytics 之间潜在的数据差异。
- Cloudflare Observatory ↗:性能的主要仪表板。它将合成测试(Google Lighthouse,以获得标准化基线)与真实用户监控 (RUM) 结合起来,以捕获不同设备和地区用户的实际体验。
- GraphQL Analytics API:用于趋势和时间见解(Timing Insights) ↗。查询特定指标(如
edgeDnsResponseTimeMs与originResponseDurationMs)以精确查明在何处引入了延迟。 - Web Analytics:专用于隐私优先、基于边缘的 RUM 分析。
- Cache Analytics:对于分析缓存命中率 (CHR) 和“按缓存状态划分的请求”至关重要,以查找导致源站负载的未缓存内容。
- Ruleset Engine:审查并利用丰富的字段库,包括诸如 TCP RTT 和 TCP 字段之类的网络指标,以根据实时连接属性实现路由、缓存和安全的精确自定义逻辑。
- 日志记录与取证:
- Log Explorer:用于直接在仪表板中对请求日志进行临时查询。使用自定义日志字段记录额外的请求标头、响应标头和 cookie。
- Logpush:用于将日志导出到第三方 SIEM,支持可选的日志输出选项,并支持 CSV 或 JSON 等格式。对于分析自定义字段和长期趋势、以及计算大文件的下载成功率和分析下载吞吐量至关重要。
- Instant Logs:实时流量检查,用于即时调试。
- Network Error Logging (NEL):捕获服务器可能永远看不到的客户端连接问题。
- Cloudflare Telescope ↗:一个开源、跨浏览器的前端测试代理,能够在所有主流浏览器中运行测试。使用它在 CI/CD 管道中自动化性能回归测试。
- Cloudflare Speed Test ↗:通过使用预定义的数据块在 Cloudflare 的全球网络上模拟真实世界的使用情况,来测量切合实际的互联网连接质量(包括有载延迟、抖动和丢包),而不是简单地测试峰值吞吐量饱和度。
- Cloudflare Prometheus Exporter ↗:从 GraphQL Analytics API 抓取指标并以兼容 Prometheus 的格式公开它们,允许您在 Grafana 或类似工具中与基础设施指标一起可视化 Cloudflare 性能数据。
虽然 Cloudflare 提供了内部指标,但外部(第三方)工具对于关键渲染路径的独立验证和深入分析至关重要。
- WebPageTest ↗:详细的瀑布图和加载行为的深入分析。
- Google PageSpeed Insights ↗:Core Web Vitals 评估的标准(现场和实验室数据)。
- DebugBear ↗:非常适合持续监控和跟踪速度历史记录。
- Pingdom ↗:适用于简单的基于地理位置的可用性和速度测试。
- Treo.sh ↗:Chrome 用户体验报告 (CrUX) 数据的快速、历史可视化。