Skip to content

Instantly share code, notes, and snippets.

@jdurack
Last active December 18, 2015 12:49
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save jdurack/5785783 to your computer and use it in GitHub Desktop.
Save jdurack/5785783 to your computer and use it in GitHub Desktop.
Node issue #5545 reproduction script
var http = require('http');
var timeInterval = 20; //ms
var maxOutstandingRequests = 10;
var successCount = 0;
var outstandingRequests = 0;
var options = {
hostname: 'www.google.com'
, agent: false
};
var makeRequest = function() {
if ( outstandingRequests >= maxOutstandingRequests ) {
return;
}
outstandingRequests++;
var req = http.get(options, function(res) {
outstandingRequests--;
if ( ! res || ! res.statusCode || res.statusCode !== 200 ) {
console.log('Fail. successCount: ', successCount, ', outstandingRequests: ', outstandingRequests);
} else {
successCount++;
console.log('Success. successCount: ', successCount, ', outstandingRequests: ', outstandingRequests);
}
});
req.on('error', function(e) {
outstandingRequests--;
console.log('error: ', e.message, ', successCount: ', successCount);
});
};
setInterval(makeRequest, timeInterval);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment