title: Express request reissued on timeout
body: <p>For some reason if app is not process request in time its 'get' callback is called again. In my opinion this is horribly wrong. Client sent only one request and the server should process it once. Now with client retry logic we're having spawn of ghost requests in a large amount.</p>
  
  <pre><code>var express = require('express');
  var app = express();
  
  var counter = 0;
  app.get('/', function (req, res) {
    console.log('-&gt;\tget', ++counter);
    setTimeout(function () {
      res.send('ok');
    }, 5000);
  });
  
  var server = app.listen(3000, function () {
    console.info('Server port:', server.address().port);
  });
  server.timeout = 1000;
  </code></pre>
  
  <p>Output:</p>
  
  <pre><code>Server port: 3000
  -&gt;      get 1
  -&gt;      get 2               &lt;----- Here is ghost request i didn't made!!!
  </code></pre>
  
  <p>Is it bug in the express or some feature?</p>