使用AWS JavaScript SDK和agent = false进行快速S3操作

时间:2015-05-08 18:28:08

标签: node.js amazon-web-services amazon-s3

我需要尽快在S3中执行数千次操作。我创建了一个Node.js应用程序,它将使用S3 SDK一次尝试多达500个操作。示例操作包括s3.copyObject()s3.listObjects等。

在我的测试中,我发现实际上只有少数请求同时通过线路发生,因为代理看到它在同一主机上,并将所有请求推送到同一TCP连接。我通过禁用代理来解决这个问题:

AWS.config.httpOptions.agent = false;

但要做到这一点,我还必须禁用SSL:

AWS.config.sslEnabled = false;

SDK文档说特殊代理用于SSL操作。

如何覆盖SSL代理行为,禁用keep-alive或至少启用~500 keep-alive同时连接?

1 个答案:

答案 0 :(得分:0)

事实证明我没有将我的Node副本升级到v0.12所以我不得不设置全局代理maxSockets。起来解决了这个问题。因此出于同样的原因升级到Node.js v0.12.02。