OS X 10.8.3
ノード 0.10.0
「http」モジュールを使用して、Facebook グラフ API のリクエストを作成しています。
「http.get」に渡すオプションは次のとおりです。
var options = {host: 'graph.facebook.com',
port: 80,
path: '/' + fb_id + '/picture'}; //fb_id is a Facebook user identifier
私のコードは次のようになります。
http.get(options,
function(res) {
...some stuff...
DONE(RESULT); //DONE is a callback function
}).on('error', function(e) {
...some error handling...
});
私が観察したことは、http.globalAgent.maxSockets の値と同じ数のリクエストしか実行できないということです。その数のリクエストに達すると、次の http.get への呼び出しは (明らかに) 接続しません。リクエストでエラーが発生していないことを確認しました。
応答が入った後、ソケットが閉じられていないようです。
ソケットが閉じていることを確認するために、応答ハンドラーの一部として何かする必要がありますか?
これらのソケットは、デフォルトのキープアライブ動作のために閉じていませんか?
これをデバッグするにはどうすればよいですか?