title: why is node https request faster than http request
body: <p>I have the below code and i ran a performance test on post using http and https url. The result actually surprised me. https request are performing better. </p>
  
  <pre><code>var express = require('express');
  var fs =require('fs');
  var https = require('https');
  var http = require('http');
  var authTransaction = require('./routes/trans');
  var app = express();
  app.configure(function(){
      app.use(express.logger('dev'));
      app.use(express.bodyParser());
  });
  var privateKey  = fs.readFileSync(mykey.pem', 'utf8');
  var certificate = fs.readFileSync('mycert.pem', 'utf8');
  var passphrase ="blahblah";
  
  var credentials = {key: privateKey, cert: certificate,passphrase:passphrase};
  var httpsServer = https.createServer(credentials, app).listen(9090);
  var httpServer = http.createServer(app).listen(5000);
  
  app.get('/',function(req,res){
      res.send("hello ");
  })
  
  app.post('/trans', function(req,res){
      var purchase= new Purchase(req.body);
      purchase.save(function(err){
          if(err) {
              res.send({'error': 'An error occured'});
          }else{
                  res.json({
                    "status": {
                          "message": [
                          "Success"
                          ]
                      }
              });
          }
      });
  });
  </code></pre>
  
  <p>I ran 10 Threads for 1 hour, results below</p>
  
  <p>The results: </p>
  
  <p>NodeJS – https </p>
  
  <pre><code>Test    Min  Max    Avg   Last  Count      Throughput      Bytes     BPS    
  Trans   5   3017    12.69   7     47010        13.05    13961970    3878
  </code></pre>
  
  <p>NodeJS – http</p>
  
  <pre><code>Test    Min Max     Avg    Last Count   Throughput  Bytes   BPS 
  Trans   17  3031    40.26   29  45326   12.59    13461822   3739    
  </code></pre>
  
  <p>Can anyone throw some light in here ? </p>