summaryrefslogtreecommitdiff
path: root/deps/node/benchmark/http/headers.js
blob: 8f611ae4743c9338af7f700c3efbd4388332a08b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
'use strict';

const common = require('../common.js');
const http = require('http');

const bench = common.createBenchmark(main, {
  n: [10, 1000],
  len: [1, 100],
});

function main({ len, n }) {
  const headers = {
    'Connection': 'keep-alive',
    'Transfer-Encoding': 'chunked',
  };

  const Is = [ ...Array(n / len).keys() ];
  const Js = [ ...Array(len).keys() ];
  for (const i of Is) {
    headers[`foo${i}`] = Js.map(() => `some header value ${i}`);
  }

  const server = http.createServer((req, res) => {
    res.writeHead(200, headers);
    res.end();
  });
  server.listen(common.PORT, () => {
    bench.http({
      path: '/',
      connections: 10
    }, () => {
      server.close();
    });
  });
}