From f98679f3b29383b504c5f79cf9bc5879efd3cb5d Mon Sep 17 00:00:00 2001 From: Rich Trott Date: Mon, 15 Apr 2019 22:17:34 -0700 Subject: [PATCH] benchmark: add benchmark for dns.promises.lookup() Adding this benchmark will let us check the performance implications of https://github.com/nodejs/node/pull/27081. PR-URL: https://github.com/nodejs/node/pull/27249 Reviewed-By: Richard Lau Reviewed-By: Anna Henningsen Reviewed-By: Yongsheng Zhang --- benchmark/dns/lookup-promises.js | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 benchmark/dns/lookup-promises.js diff --git a/benchmark/dns/lookup-promises.js b/benchmark/dns/lookup-promises.js new file mode 100644 index 00000000000000..a74c856cd3461a --- /dev/null +++ b/benchmark/dns/lookup-promises.js @@ -0,0 +1,31 @@ +'use strict'; + +const common = require('../common.js'); +const { lookup } = require('dns').promises; + +const bench = common.createBenchmark(main, { + name: ['127.0.0.1', '::1'], + all: ['true', 'false'], + n: [5e6] +}); + +function main({ name, n, all }) { + if (all === 'true') { + const opts = { all: true }; + bench.start(); + (async function cb() { + for (let i = 0; i < n; i++) { + await lookup(name, opts); + } + })(); + bench.end(n); + } else { + bench.start(); + (async function cb() { + for (let i = 0; i < n; i++) { + await lookup(name); + } + })(); + bench.end(n); + } +}