を介してノード+エクスプレスアプリに大量のデータをインポートしようとしていますapp.get("/importdata" , callback)
。タイムアウト時にリクエストが完了していない場合は、リクエストが再度再生され、サーバーは同じデータのインポートを再開します。
接続タイムアウト後にリクエストが再生される正確な理由を見つけることができませんか?
timeOut期間を膨大な数に設定すると、問題の一部は解決されますが、リクエストが再度再生される理由が正確にわかりません。
よろしくお願いします。
私のserver.jsからのピース
app.get('/impdata', function(req, res){
req.connection.setTimeout(600000);
console.log("impstore--------------->");
Q.when( getData(req.data), function(resp){
res.json(resp);
}); });
私のコンソールからのピース
impstore--------------->
userid
time stamp Wed Oct 24 2012 16:35:28 GMT+0530 (IST)
Listings got 100
userid
ims 1
time stamp recursive
Listings got 200
userid
ims 1
time stamp recursive
Listings got 300
userid
ims 1
time stamp recursive
Listings got 400
userid
ims 1
time stamp recursive
Listings got 500
userid
ims 1
time stamp recursive
Listings got 600
userid
ims 1
time stamp recursive
Listings got 700
userid
ims 1
time stamp recursive
Listings got 800
userid
ims 1
time stamp recursive
Listings got 900
userid
ims 1
time stamp recursive
impstore--------------->
userid
time stamp Wed Oct 24 2012 16:37:28 GMT+0530 (IST)
Listings got 1000
userid
ims 1
time stamp recursive
Listings got 100
userid
ims 1
詳細:100個のチャンクでデータを取得しています900個のデータリストを受け取り、サーバーがタイムアウトしましたが、コンソールでリクエストが再度行われ、最後の2セットを確認します。最初のセットは、次の100個のリストを表示します。 1000に増やし、2番目のリストはリストが100であり、プロセス全体が完了すると、Uには2つの同様のオブジェクトがあります。
うまくいけば、私はよく説明しました。