Skip to content

cloudamqp/lavinmq-benchmark

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LavinMQ Benchmark Tool

Infrastructure-as-code benchmarking tool for LavinMQ, using Terraform to provision AWS resources and lavinmqperf to run performance tests.

Prerequisites

  • Terraform >= 1.3.0 — installation guide
  • AWS credentials with permission to create EC2 and VPC resources
  • An SSH key pair for instance access

Scenarios

Provisions a broker and one or more load generator instances, then runs a single user-supplied lavinmqperf command. Useful for ad-hoc throughput or latency measurements where you control the exact test parameters.

Runs sequential throughput tests across a configurable set of message sizes. Produces a markdown summary table (publish and consume rates per message size) stored on the load generator and displayed as Terraform output.

Runs sequential latency tests across a configurable set of message sizes and rate limits. Produces one markdown table per message size showing latency percentiles (min, median, p75, p95, p99) and bandwidth, stored on the load generator and displayed as Terraform output.

Configuration

Variables can be supplied in three ways:

terraform.auto.tfvars — loaded automatically by Terraform:

terraform apply

terraform.tfvars — loaded explicitly:

terraform apply -var-file="terraform.tfvars"

.env file via dotenv — environment variables prefixed with TF_VAR_:

dotenv terraform apply

Use the templates in modules/providers/aws/variables_template/ as a starting point:

  • terraform_tfvars.txt — for .tfvars files
  • env.txt — for .env files

AWS credentials must be set as environment variables regardless of the method used:

export AWS_ACCESS_KEY=*** export AWS_SECRET_KEY=***

Logging

Enable detailed Terraform provider logs by setting:

export TF_LOG_PROVIDER=DEBUG

Accepted levels: INFO, DEBUG, WARN, ERROR, TRACE.

About

Run benchmark on LavinMQ with Terraform infrastructure setup

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors