Yas*_*ala 2 cdn content-management-system amazon-cloudfront aem
我想弄清楚如何将 Adobe Experience Manager (AEM) 之类的 CMS 与 AWS CloudFront 之类的 CDN 服务进行比较?我是在比较苹果和橙子吗?提前致谢。
是的,您正在将苹果与橙子进行比较……但对此可能有一个合理的解释——它们经常一起使用。
一个内容管理系统(CMS)是用于创建,修改,管理,组织和发布的内容,具有高层次的系统WordPress的(该软件,而不是服务)是一个常见的例子。
博客托管网站是托管 CMS 的示例。WordPress(公司)是托管 (SaaS) CMS 服务的一个示例。
甲内容分发网络(CDN)是一个低级别的基础设施提供商通常有利于电子内容全球性的,高性能的递送,使用全球分布式存储,基础设施和连通性。例如Amazon CloudFront、Fastly和CloudFlare。
CDN 通常不权威地存储或呈现内容,它们只缓存它,并且缓存是全球分布的,内容的副本保存在经常访问的地理区域中。CDN 通常表现得像 HTTP 反向代理,从权威源服务器(通常是一组相同的服务器)拉取内容,这些服务器本身也可能是全球分布的,尽管在某些情况下 CDN 提供了足够的优化以允许源位于单一的地理位置。
CMS 通常部署在 CDN 的“后面”——CMS服务器(集群)是源服务器。是否这样做通常是一个容易的决定,即使是小规模的。查看器连接到 CDN 并发出请求,如果可能,CDN 将从缓存中提供服务,否则转发到源。如果可能,生成的响应将返回给原始请求者并存储在 CDN 的缓存中。这种安排通常允许在部署有 CDN 时将源扩展到比不带 CDN 时更小,因为 CDN 缓存意味着源的工作负载更少。
但是请注意,CDN 往往超出了优化全局静态内容交付的简单定义,实际上也超出了“CDN”的任何正确定义。
CDN 越来越多地集成无服务器计算服务,例如 CloudFront 的Lambda@Edge和CloudFlare Workers,它们允许您部署无服务器功能,这些功能可以操作 HTTP 标头、做出请求路由决策,甚至生成呈现的响应。这超出了 CDN 的传统范围,但可以想象,可以利用将整个 CMS 嵌入到 CDN 基础设施中,但这并没有模糊 CMS(软件)和 CDN(基础设施)之间的区别。
CloudFront 还能够检测来自同一地理区域内多个浏览器对完全相同资源的同时请求,使用称为请求折叠的东西。如果对不在边缘缓存中的内容的请求已经在发送到源服务器并且对同一资源的更多请求到达,则 CloudFront 实际上将保留这些待处理的请求,等待服务器返回对单个请求的单个响应,并将该响应克隆到所有等待它的浏览器。 Fastly 也支持这一点,并且似乎比 CloudFront 提供了更多的控制粒度,CloudFront 会自动实现该功能。
一些 CDN 还可以将来自 Web 浏览器的请求/响应传递到原始服务器,这些请求/响应不是正确的“内容”请求——例如 HTML 表单发布请求——这提供了多种优势,包括更简单的集成(所有站点流量都可以通过通过单个域,避免跨域复杂性),优化的传输和 TCP 堆栈,更快的 TLS 协商(由于减少了浏览器和它连接的 Web 服务器之间的往返时间,这是在 CDN),并转换 HTTP /2(面向浏览器)到 HTTP/1.1(面向服务器)。
CDN 本质上还为源站服务器提供了一层 DDoS 保护,因为流量在前端到达 CDN,只有 CDN 的后端与您的源站服务器联系。请求必须是有效的,不能从缓存中提供服务,并且在您的源服务器甚至会看到它们之前,都不会被 CDN 上(并由其管理)的缓解系统阻止。
但重要的是要注意,这些功能都不是“CDN”定义的正确组成部分;他们的能力,这些服务提供等正在被捆绑成一种产品销售作为围绕CDN的概念设计......所以我建议,这是经常使用这些CDN服务之一,即使在地方实际CDN是个好主意不需要功能。
| 归档时间: |
|
| 查看次数: |
2360 次 |
| 最近记录: |