From 9a6cfd653d74ab23d9415e6ce67da22badb8101e Mon Sep 17 00:00:00 2001 From: Kurt Mackey Date: Thu, 6 Jun 2019 21:46:18 -0500 Subject: add tcp proxy benchmarks + split out website section for proxy req/s (#2464) --- website/benchmarks.html | 130 ++++++++++++++++++++++++++++++++++++------------ 1 file changed, 99 insertions(+), 31 deletions(-) (limited to 'website/benchmarks.html') diff --git a/website/benchmarks.html b/website/benchmarks.html index a307fcdad..fa1b140e9 100644 --- a/website/benchmarks.html +++ b/website/benchmarks.html @@ -3,17 +3,18 @@ Deno Benchmarks - +
-
` +
+ `
- +

Deno Continuous Benchmarks

@@ -21,7 +22,10 @@ master branch.

-

Make sure your adblocker is disabled as some can block the chart rendering.

+

+ Make sure your adblocker is disabled as some can block the chart + rendering. +

recent data

all data (takes a moment to load)

@@ -37,41 +41,53 @@
  • deno_tcp + >deno_tcp is a fake http server that doesn't parse HTTP. It is comparable to node_tcp + >node_tcp .
  • deno_http + >deno_http is a web server written in TypeScript. It is comparable to node_http + >node_http .
  • -
  • deno_core_single and deno_core_multi are two versions of - a minimal fake HTTP server. It blindly reads and writes fixed HTTP - packets. It is comparable to deno_tcp and node_tcp. - This is a standalone executable that uses the deno rust crate. The +
  • + deno_core_single and deno_core_multi are two versions of a minimal + fake HTTP server. It blindly reads and writes fixed HTTP packets. It + is comparable to deno_tcp and node_tcp. This is a standalone + executable that uses + the deno rust crate. The code is in http_bench.rs + >http_bench.rs and http_bench.js. single uses tokio::runtime::current_thread - and multi uses tokio::runtime::threadpool. + >http_bench.js. single uses + tokio::runtime::current_thread + and multi uses + tokio::runtime::threadpool.
  • @@ -86,10 +102,60 @@
    +

    + Proxy Req/Sec # +

    + +

    + Tests proxy performance. 10 keep-alive connections do as many + hello-world requests as possible. Bigger is better. +

    + +
      +
    • + deno_proxy_tcp + is a fake tcp proxy server that doesn't parse HTTP. It is comparable + to + node_proxy_tcp + . +
    • + +
    • + deno_proxy + is an HTTP proxy server written in TypeScript. It is comparable to + node_proxy + . +
    • + +
    • + + hyper + + is a Rust HTTP server used as the origin for the proxy tests +
    • +
    + +
    +

    Max Latency #

    - Max latency during the same test used above for requests/second. Smaller is better. + Max latency during the same test used above for requests/second. Smaller + is better.

    @@ -101,8 +167,8 @@ - tests/002_hello.ts - , + tests/002_hello.ts , tests/003_relative_import.ts import { drawCharts } from "./app.js"; window.chartWidth = 800; - const overlay = document.getElementById("spinner-overlay") + const overlay = document.getElementById("spinner-overlay"); - function showSpinner () { + function showSpinner() { overlay.style.display = "block"; } - function hideSpinner () { + function hideSpinner() { overlay.style.display = "none"; } - function updateCharts () { - const u = window.location.hash.match("all") ? "./data.json" : "recent.json"; + function updateCharts() { + const u = window.location.hash.match("all") + ? "./data.json" + : "recent.json"; + + showSpinner(); - showSpinner() - - drawCharts(u).finally(hideSpinner) + drawCharts(u).finally(hideSpinner); } - updateCharts() + updateCharts(); - window.onhashchange = updateCharts + window.onhashchange = updateCharts; -- cgit v1.2.3