限制亚马逊AWS Cloudfront

时间:2011-10-21 12:07:50

标签: amazon-web-services amazon-cloudfront

我最近设置了一个新网站,利用Amazon Cloudfront分发非常大的文件,但亚马逊目前向我的服务器发出了如此多的请求,以至于我的整个网站都停滞不前。

我应该注意,我没有使用S3,cloudfront直接连接到我的服务器。

我有一个100mb的数据连接,我正在尝试分发的文件是两个3GB的文件。但是,如果我在ssh中运行iftop,Amazon ip地址似乎会占用每一行,可能会尝试将同一文件缓存到多个不同的服务器,并且它们似乎正在耗尽我的整个连接。

无论如何将云端限制为10mb或更低的连接?

2 个答案:

答案 0 :(得分:5)

您确定要为文件正确设置缓存标头吗? CloudFront尊重ExpiresCache-Control标头,您可以使用它们来扩展和减少文件被视为有效的时间。将Cache-Control: public, max-age=86400添加到您的响应标头将导致边缘服务器将文件缓存为最多一天(86400秒)。

另一点需要注意的是,边缘服务器的缓存文件存储容量有限。考虑到保留半频率使用的10GB文件和使用频率较低的10KB文件之间的选择,亚马逊可能会选择删除10GB文件以便为更多客户提供服务。如果可能,请考虑减小对象大小以避免被删除。

答案 1 :(得分:2)

如果您只有2个大文件且这些文件不经常更改,为什么不将它们放在S3中并使该存储桶成为CloudFront分配的来源?然后,您只需通过Internet连接传输一次文件,您就不必担心与这些文件的分发相关的任何基础设施。