Running Benchmarks

Run the benchmarks against Keycloak instances.

Alternatives to run benchmarks

Running benchmarks from the CLI

Generic command line to run the benchmarks from any host against an already provisioned Keycloak instance.

Use this to run a Keycloak benchmark against a locally running Keycloak instance. When running more than 300 new users per second against a remote instance of Keycloak, the load generation might stall due to a lot of network connections in TIME_WAIT mode. In those cases, use the Running benchmarks via Ansible and EC2 or a similar mechanism to split the load generation across multiple nodes.

Running benchmarks via Ansible and EC2

This extends the generic CLI with an automated setup using Ansible for Amazon Web Services EC2 instances to run the load tests.

Use this when a single instance for load generation is not enough when for example network connections can’t be established fast enough due to too many connections in the status TIMED_WAIT. It also helps you to have a load driver in the same or a different AWS region to have a minimal latency or simulating a latency as observed by users.