如何从Amazon S3改进TTFB?

时间:2015-08-28 18:55:24

标签: ajax amazon-web-services amazon-s3 latency

我正在开发一个小型网络应用程序,我有一些数据文件存储在一个带有CORS设置的s3存储桶中,需要从客户端浏览器访问。

出于某种原因,我对ajax调用S3文件的延迟非常高(7KB文件超过4秒),这是由于TTFB(正如你在开发工具截图https://www.dropbox.com/s/4trx2m9m1v8visu/Screenshot%202015-08-28%2011.44.53.png?dl=1中看到的那样)。客户端和S3存储桶都位于加利福尼亚州北部。

任何有关此处可能发生的事情的想法都将受到赞赏。

谢谢

url = 'http://mybucket.s3.amazonaws.com/simdata.zip';
$.ajax({
  url: url,
  dataType: "json",
  contentType: "application/json; charset=utf-8",
  success: function(response) {
    console.log("received");
  },
  failure: function(response) {
    // TODO: decent error message
    alert('Unable to load');
  }
});

1 个答案:

答案 0 :(得分:0)

4.40 s用于等待,afaik是在AWS S3服务器上查找资源所花费的时间。我们无法访问其服务器的后端。

内容下载仅为0.841秒。表明网络传输非常好。

可以解决您的问题的建议之一是使用CDN即。 CloudFront的。见http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/MigrateS3ToCloudFront.html

替代方案是使用一个小的EC2实例并将内容放入内存并从那里提供zip文件。