summaryrefslogtreecommitdiff
path: root/cli/bench/node_http_proxy.js
diff options
context:
space:
mode:
authorValentin Anger <syrupthinker@gryphno.de>2020-08-28 15:03:50 +0200
committerGitHub <noreply@github.com>2020-08-28 09:03:50 -0400
commit31f32ed8c4082d36ad2a4ea460366c0d57a5ddbc (patch)
tree2b60111cd53dd4034d1a92ee8caff89d164b7d2d /cli/bench/node_http_proxy.js
parent3d23208019a2c9faaf265ff13ad59f2d04f10079 (diff)
Move benchmarks to Rust (#7134)
All benchmarks are done in Rust and can be invoked with `cargo bench`. Currently this has it's own "harness" that behaves like `./tools/benchmark.py` did. Because of this tests inside `cli/bench` are currently not run. This should be switched to the language provided harness once the `#[bench]` attribute has been stabilized.
Diffstat (limited to 'cli/bench/node_http_proxy.js')
-rw-r--r--cli/bench/node_http_proxy.js22
1 files changed, 22 insertions, 0 deletions
diff --git a/cli/bench/node_http_proxy.js b/cli/bench/node_http_proxy.js
new file mode 100644
index 000000000..b984c484f
--- /dev/null
+++ b/cli/bench/node_http_proxy.js
@@ -0,0 +1,22 @@
+// Copyright 2018-2020 the Deno authors. All rights reserved. MIT license.
+const http = require("http");
+const port = process.argv[2] || "4544";
+const originPort = process.argv[3] || "4545";
+console.log("port", port);
+http
+ .Server((req, res) => {
+ const options = {
+ port: originPort,
+ path: req.url,
+ method: req.method,
+ headers: req.headers,
+ };
+
+ const proxy = http.request(options, (proxyRes) => {
+ res.writeHead(proxyRes.statusCode, proxyRes.headers);
+ proxyRes.pipe(res, { end: true });
+ });
+
+ req.pipe(proxy, { end: true });
+ })
+ .listen(port);