Systems exhibition

Engineering tool · Concurrent JDBC workloads

Database Stress Testing Framework

A configurable Spring Boot tool for applying concurrent load to JDBC databases and watching throughput, tail latency, and failures as they happen.
Java 17Spring BootJDBCRedisWebSocketPrometheusGrafanaOpenTelemetry
worker 01worker 02worker 03worker 04worker 05worker 06worker 07worker 08worker 09
JDBC target
connectionsp50p95p99
01 / Problem

The constraint.

Database performance regressions are hard to catch because you cannot compare runs reliably — different load, different data, no plan-level visibility.

02 / Architecture

How it is shaped.

Each test gets an isolated HikariCP pool and fixed worker executor. A metrics collector publishes one-second windows over WebSocket; results persist separately from the target database and export to JSON or PDF.

03 / How it works

Decisions made explicit.

  • Per-test pool isolation
  • Strategy-based workload profiles
  • Execution-plan capture per query
  • Bounded final latency samples and graceful executor shutdown
04 / Failure thinking

Where it can break.

Tests move through a defined lifecycle and share a stop signal. Errors are counted, classified, and surfaced alongside latency rather than discarded.

05 / Reflection

What I learned.

A useful load tool explains the workload and its failure modes; a large throughput number alone says very little.

Inspect the sourceDatabase Stress Testing Framework on GitHub