我的申请存在问题。我在DynamoDB上运行了很长的请求。此扫描需要很长时间但仍会崩溃。
在最初启动的查询完成之前,我的服务器正好每隔2分钟重新启动GET request
。这会使我的服务器每2分钟启动另一个启动查询,直到第一个查询完成并发送回调。
这是我用于扫描的代码行。
if (typeof data.LastEvaluatedKey != "undefined") {
Array.prototype.push.apply(returnData.Items,data.Items);
params.ExclusiveStartKey = data.LastEvaluatedKey;
docClient.scan(params, onScan);
}else{
console.log("Scanning complete");
if(returnData.Items){
Array.prototype.push.apply(returnData.Items,data.Items);
callback(null, returnData);
}else{
callback(null, data);
}
}
有没有办法阻止这些重复请求?
[15/May/2018:14:26:25 +0000] "GET /scan?{parameters} HTTP/1.1"
或者我是否需要在加载页面后将所有这些作为AJAX请求执行?
感谢您的帮助!
答案 0 :(得分:4)
Node.js中请求的默认超时为2分钟。
如果您的请求需要更多时间,可以在服务器启动后进行设置:
server.timeout = 300000; // (5 minutes in msecs)
有关详细信息,请查看documentation。