diff options
Diffstat (limited to 'website/app.js')
-rw-r--r-- | website/app.js | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/website/app.js b/website/app.js index 23618274b..9f16e8e45 100644 --- a/website/app.js +++ b/website/app.js @@ -42,6 +42,10 @@ export function createThroughputColumns(data) { return createColumns(data, "throughput"); } +export function createProxyColumns(data) { + return createColumns(data, "req_per_sec_proxy"); +} + export function createReqPerSecColumns(data) { return createColumns(data, "req_per_sec"); } @@ -197,15 +201,41 @@ export function drawCharts(dataUrl) { return drawChartsFromBenchmarkData(dataUrl); } +const proxyFields = [ + "req_per_sec" + //"max_latency" +]; +function extractProxyFields(data) { + for (const row of data) { + for (const field of proxyFields) { + const d = row[field]; + if (!d) continue; + const name = field + "_proxy"; + const newField = {}; + row[name] = newField; + for (const k of Object.getOwnPropertyNames(d)) { + if (k.includes("_proxy")) { + const v = d[k]; + delete d[k]; + newField[k] = v; + } + } + } + } +} /** * Draws the charts from the benchmark data stored in gh-pages branch. */ export async function drawChartsFromBenchmarkData(dataUrl) { const data = await getJson(dataUrl); + // hack to extract proxy fields from req/s fields + extractProxyFields(data); + const execTimeColumns = createExecTimeColumns(data); const throughputColumns = createThroughputColumns(data); const reqPerSecColumns = createReqPerSecColumns(data); + const proxyColumns = createProxyColumns(data); const maxLatencyColumns = createMaxLatencyColumns(data); const maxMemoryColumns = createMaxMemoryColumns(data); const binarySizeColumns = createBinarySizeColumns(data); @@ -235,6 +265,7 @@ export async function drawChartsFromBenchmarkData(dataUrl) { gen("#exec-time-chart", execTimeColumns, "seconds", logScale); gen("#throughput-chart", throughputColumns, "seconds", logScale); gen("#req-per-sec-chart", reqPerSecColumns, "1000 req/sec", formatReqSec); + gen("#proxy-req-per-sec-chart", proxyColumns, "req/sec"); gen("#max-latency-chart", maxLatencyColumns, "milliseconds", logScale); gen("#max-memory-chart", maxMemoryColumns, "megabytes", formatMB); gen("#binary-size-chart", binarySizeColumns, "megabytes", formatMB); |