summaryrefslogtreecommitdiff
path: root/cli/bench/tcp.js
diff options
context:
space:
mode:
Diffstat (limited to 'cli/bench/tcp.js')
-rw-r--r--cli/bench/tcp.js22
1 files changed, 22 insertions, 0 deletions
diff --git a/cli/bench/tcp.js b/cli/bench/tcp.js
new file mode 100644
index 000000000..826f5f87b
--- /dev/null
+++ b/cli/bench/tcp.js
@@ -0,0 +1,22 @@
+// Copyright 2018-2022 the Deno authors. All rights reserved. MIT license.
+
+const listener = Deno.listen({ port: 4500 });
+const response = new TextEncoder().encode(
+ "HTTP/1.1 200 OK\r\nContent-Length: 12\r\n\r\nHello World\n",
+);
+
+// Accept a connection and write packets as fast as possible.
+async function acceptWrite() {
+ const conn = await listener.accept();
+ try {
+ while (true) {
+ await conn.write(response);
+ }
+ } catch {
+ // Pass
+ }
+ conn.close();
+}
+
+await acceptWrite();
+await acceptWrite();