什么是源站?|源站定义

源站的目的是处理和响应来自 Internet 客户端的传入 Internet 请求。

学习目标

阅读本文后,您将能够:

  • 定义源站
  • 将源站与 CDN 边缘服务器区分开来
  • 解释 CDN 源站保护的局限

相关内容


想要继续学习吗?

订阅 TheNET,这是 Cloudflare 每月对互联网上最流行见解的总结!

参阅 Cloudflare 的隐私政策,了解我们如何收集和处理您的个人数据。

复制文章链接

什么是源站?

源服务器的目的是处理和响应来自互联网客户端的传入客户端请求。源服务器的概念通常与边缘服务器缓存服务器的概念结合使用。源服务器的核心是一台运行一个或多个程序的计算机,这些程序旨在侦听和处理传入的客户端请求。源服务器可以承担为网站之类的客户端资产提供内容的全部责任,只要流量不超出服务器能够处理的范围并且延迟不是主要问题即可。

源服务器与发出请求的客户端之间的物理距离会增加连接的延迟,进而延长加载互联网资源(例如网页)所需的时间。使用 SSL/TLS 的安全互联网连接需要客户端与源服务器之间的额外往返时间 (RTT),这也增加了请求的额外延迟时间,直接影响客户端从源服务器请求数据的体验。使用内容分发网络 (CDN) 可以缩短往返时间,并且还可以减少对源服务器的请求量。

边缘服务器和源站有什么区别?

简单地说,CDN 边缘服务器是放置在全球主要互联网提供商之间重要关口的计算机,用于尽快交付内容。边缘服务器位于网络“边缘”的 CDN 内,专门用于快速处理请求。通过策略性地将边缘服务器放置在网络之间存在的互联网交换点 (IxP),CDN 能够缩短到达互联网上特定位置所花费的时间。

这些边缘服务器会缓存内容,以减轻一个或多个源服务器的负担。通过将静态资产(如图像、HTML 和 JavaScript 文件以及可能的其他内容)尽可能移到请求客户端计算机附近的位置,边缘服务器缓存能够缩短加载 Web 资源所需的时间。使用 CDN 时,源服务器仍然具有重要功能,因为通常会在源服务器内维护重要的服务器端代码(例如用于身份验证的哈希客户端凭据数据库)。

下面是边缘服务器和源站一起工作以提供登录页面并允许用户登录服务的简单示例。一个简单的登录页面需要下载以下静态资产,才能正确呈现网页:

  1. 网页的 HTML 文件
  2. 网页样式的 CSS 文件
  3. 几个图像文件
  4. 几个 JavaScript 库

这些文件都是静态文件;它们不是动态生成的,对于网站的所有访问者都是相同的。因此,这些文件可以缓存,并从边缘服务器提供给客户端。所有这些文件都可以加载到更靠近客户端计算机的位置,避免消耗源站的带宽。

CDN 边缘缓存响应

接下来,当用户输入他们的登录名和密码并按“登录”时,对动态内容的请求将返回到边缘服务器,然后边缘服务器会将请求代理回源站。然后,源站将在关联的数据库表中验证用户的身份,再发回特定帐户信息。

CDN 非缓存原点获取图示

使用 CDN 时,处理静态内容的边缘服务器与提供动态内容的源站各自承担一些责任。一些 CDN 的功能也可以扩展到这种简化模型之外。

使用 CDN 时,源站仍然可能被攻击吗?

简单来说,是的。CDN 不能使源服务器立于不败之地,但如果使用得当,它可以使源服务器不可见,从而充当传入请求的防护罩。隐藏源服务器的真实 IP 地址是设置 CDN 的重要部分。因此,CDN 提供商应建议在实施 CDN 策略时更改源服务器的 IP 地址,以防止 DDoS 攻击绕过防护罩并直接击中源服务器。Cloudflare 的 CDN 包括全面的 DDoS 保护。