使用 Akamai NetStorage 与 Akamai 的边缘服务有何区别?以下是我认为区分它们的概念,但我希望从更有经验的人那里获得更多详细信息。
网络存储
这实际上是一个高性能的托管场所,用于托管图像、JS、CSS、XML、视频、其他静态资产等。您实际上可以通过 FTP 将文件传输到特定位置,然后从特定的 Akamai URL 检索它们。这些资产都非常快,因为它们是缓存的并且分布在全球。
边缘服务
这不是托管选项,而是现有托管的缓存选项。因此,您可以告诉它要缓存什么(文件类型、路径等)以及缓存多长时间。它会转到托管在您的原始服务器上的项目,并将它们全局缓存到其服务器,然后让您的实时站点指向 Akamai 的边缘以将它们“托管”给公众。
- 我的上述假设正确吗?
- 为什么要使用其中一个而不是另一个?
- 与边缘服务相比,使用 NetStorage 有哪些好处?
- 成本对比如何?它们差不多吗?NetStorage 比 edge 贵多少倍?
- 还有其他我应该注意的对比特征吗?
答案1
(抱歉,问题发布已经有一段时间了,但希望这些信息对原帖者和/或未来的访客有用...)
您的上述假设通常是正确的。NetStorage 是 Akamai 云中其主干上的托管源站服务。
关于成本,我相信 NetStorage 是一个免费的选项,至少具有一定级别的服务,但你需要询问他们以确保。
我所在的公司每天收到大约 400 万个静态对象请求,我们使用 Akamai。我们目前正在切换到 NetStorage,为了准备切换,我已对其暂存网络进行了大量测量和测试。对我们来说,基本考虑因素如下:
边缘到源速度和缓存命中率——这实际上是流量的函数。用户体验的差异可能很大或可以忽略不计,这取决于 (1) Akamai 的边缘服务器到达您的原点的速度,以及 (2) 每个边缘服务器获取您的对象请求的频率。
如果边缘服务器必须从您的源服务器请求对象,那么源服务器的响应速度就很重要。NetStorage 的响应速度几乎总是比您的源服务器快,因为 NetStorage 位于 Akamai 网络上,并针对这一点进行了优化。
但是:您的对象在边缘服务器上缓存得越多,您的源站(或它们的源站)对这些边缘服务器请求的响应速度就越不重要。因此,如果您的对象获得大量流量(和/或您的源站位于快速服务器上并与 Akamai 的边缘网络建立非常快速的连接),那么可能根本没有太大区别。但如果您是一个中小型流量站点,并且 Akamai 的边缘服务器经常清除缓存中的对象以腾出空间给其他对象,那么这可能会产生很大的不同。确实,Akamai 有很多边缘服务器,有时它们可以从邻近的边缘服务器获取缓存的对象,但如果您的对象也不在这些邻居的缓存中,那么您的源站仍然可能会受到大量点击。
作为参考,我们对大多数对象都有非常积极的浏览器缓存策略,但我们的源站仍然会从 Akamai 的边缘服务器接收请求,这些请求每天约占 400 万个请求中的 25%-30%。
行政。如果没有 NetStorage,您显然需要托管(或安排托管)您自己的原始服务器,这意味着配置、维护、监控、预算等。NetStorage 基本上是免费托管。根据您的演出,这在某些方面可能是一个巨大的胜利。但是...
其他管理员。NetStorage 本身也存在一些麻烦和限制。例如:
如果您关心 URL 是否区分大小写,但文件名和文件路径混合大小写,则每次上传时都需要将它们转换为全小写或全大写。
NetStorage 文件管理有很多不足之处。无需编写脚本;您可以上传和下载,但删除大量文件需要很长时间。
文件夹大小基本上限制为每个文件夹 10,000 个文件(尽管文档中说限制为 50,000)。
您可能还想知道的另一件事是“米德格雷斯“选项。如果您不想使用 NetStorage,并且需要更好的缓存命中率和更少的源命中次数,您可以支付额外费用,在边缘服务器和源服务器之间插入中间层缓存服务器。这实际上保证了较低的往返时间(边缘服务器请求更本地的中间层服务器,而不是直接前往您的源服务器)和较高的缓存命中率。我们尝试过一次,效果很好,但成本超出了我们想要支付的费用。
干杯,
亚伦
答案2
您的假设是正确的。除了一个地方,我认为他们不会默认在全球范围内分发 netstorage 内容。从逻辑上讲,它应该是按需的。
其次,从性能角度来看,你不应该看到两者之间的差异。如果你设置了正确的缓存标头,那么你的静态内容无论如何都会缓存在边缘服务器上。两者之间的唯一区别是,如果你使用 netstorage,那么你将把剩余的极少量静态内容 HTTP 请求卸载到 akamai。如果原始服务器出现故障,Netstorage 可以提供帮助。
简而言之,Akamai 或多或少是一个反向代理。
一些定义,以防它们有帮助。
源服务器是您的服务器。
边缘服务器是akamai服务器。
Apache<---->|边缘服务器--Akamai_Network--->边缘服务器<---->|客户
网络存储的成本取决于您可以协商的内容:)
答案3
需要澄清一些事情... NetStorage 确实默认在全球范围内复制内容。这不是按需服务,而是自动处理的。 NetStorage 平台是独立于内容缓存基础架构的网络覆盖。
您可以配置业务逻辑以忽略请求对象的大小写。或者,您可以让 NetStorage 在上传时转换对象的名称。