Files
frankenphp/testdata/performance/database.js
Kévin Dunglas 52a0be5728 feat(ext): expose GoValue() and PHPValue() functions (#1877)
* feat(ext): expose a GoValue function

* GoValue()
2025-09-15 16:25:11 +02:00

33 lines
902 B
JavaScript

import http from "k6/http";
/**
* Modern databases tend to have latencies in the single-digit milliseconds.
* We'll simulate 1-10ms latencies and 1-2 queries per request.
*/
export const options = {
stages: [
{ duration: "20s", target: 100 },
{ duration: "30s", target: 200 },
{ duration: "10s", target: 0 },
],
thresholds: {
http_req_failed: ["rate<0.01"],
},
};
/* global __ENV */
export default function () {
// 1-10ms latency
const latency = Math.floor(Math.random() * 10) + 1;
// 1-2 iterations per request
const iterations = Math.floor(Math.random() * 2) + 1;
// 1-30000 work units per iteration
const work = Math.ceil(Math.random() * 30000);
// 1-40 output units
const output = Math.ceil(Math.random() * 40);
http.get(
http.url`${__ENV.CADDY_HOSTNAME}/sleep.php?sleep=${latency}&work=${work}&output=${output}&iterations=${iterations}`,
);
}