diff options
Diffstat (limited to 'deps/node/benchmark/http/end-vs-write-end.js')
-rw-r--r-- | deps/node/benchmark/http/end-vs-write-end.js | 57 |
1 files changed, 0 insertions, 57 deletions
diff --git a/deps/node/benchmark/http/end-vs-write-end.js b/deps/node/benchmark/http/end-vs-write-end.js deleted file mode 100644 index b4ca560b..00000000 --- a/deps/node/benchmark/http/end-vs-write-end.js +++ /dev/null @@ -1,57 +0,0 @@ -// When calling .end(buffer) right away, this triggers a "hot path" -// optimization in http.js, to avoid an extra write call. -// -// However, the overhead of copying a large buffer is higher than -// the overhead of an extra write() call, so the hot path was not -// always as hot as it could be. -// -// Verify that our assumptions are valid. -'use strict'; - -const common = require('../common.js'); - -const bench = common.createBenchmark(main, { - type: ['asc', 'utf', 'buf'], - len: [64 * 1024, 128 * 1024, 256 * 1024, 1024 * 1024], - c: [100], - method: ['write', 'end'] -}); - -function main({ len, type, method, c }) { - const http = require('http'); - var chunk; - switch (type) { - case 'buf': - chunk = Buffer.alloc(len, 'x'); - break; - case 'utf': - chunk = 'ΓΌ'.repeat(len / 2); - break; - case 'asc': - chunk = 'a'.repeat(len); - break; - } - - function write(res) { - res.write(chunk); - res.end(); - } - - function end(res) { - res.end(chunk); - } - - const fn = method === 'write' ? write : end; - - const server = http.createServer((req, res) => { - fn(res); - }); - - server.listen(common.PORT, () => { - bench.http({ - connections: c - }, () => { - server.close(); - }); - }); -} |