whatisgithub

What is rabbitmq-perf-test?

rabbitmq/rabbitmq-perf-test — explained in plain English

Analysis updated 2026-08-07 · repo last pushed 2026-08-03

418JavaAudience · ops devopsComplexity · 2/5ActiveLicenseSetup · easy

In one sentence

A tool for stress-testing RabbitMQ message servers by simulating producers and consumers, then reporting throughput, latency, and other performance metrics. Run it from the command line to find out how much traffic your setup can handle before things slow down or break.

Mindmap

mindmap
  root((repo))
    What it does
      Simulates producers
      Simulates consumers
      Reports throughput
      Generates HTML results
    Tech stack
      Java 8 plus
      AMQP protocol
      Docker image
    Use cases
      Test before launch
      Evaluate upgrades
      Compare cluster configs
      Share results
    Audience
      Production engineers
      Operations teams
    Distribution
      Standalone Java app
      Docker image
      Java library
    Licensing
      MPL license
      GPL license
      Apache license

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Test your RabbitMQ setup before a big product launch to confirm it can handle expected traffic surges.

USE CASE 2

Compare performance before and after upgrading to a larger server or adding cluster nodes.

USE CASE 3

Generate an HTML report of benchmark results to share with your team or track performance over time.

USE CASE 4

Stress-test a staging environment to find the throughput and latency limits of your messaging infrastructure.

What is it built with?

JavaAMQPDocker

How does it compare?

rabbitmq/rabbitmq-perf-testgetactivity/devicecompatpeng-zhihui/bluetoothtouch
Stars418513533
LanguageJavaJavaJava
Last pushed2026-08-032026-02-112021-07-09
MaintenanceActiveMaintainedDormant
Setup difficultyeasyeasymoderate
Complexity2/52/52/5
Audienceops devopsdevelopergeneral

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

Requires a running RabbitMQ server to test against and at least Java 8 installed on your machine.

Triple-licensed under MPL, GPL, and Apache, so you can choose whichever license fits your needs when using or distributing the tool.

So what is it?

RabbitMQ PerfTest is a tool for stress-testing RabbitMQ message servers. If your application relies on RabbitMQ to move messages between services, this tool helps you find out how much traffic your setup can handle before things slow down or break. You run it against your RabbitMQ server, and it simulates producers sending messages and consumers receiving them, then reports back on throughput, latency, and other performance metrics. At its core, the tool talks to a RabbitMQ cluster using the AMQP messaging protocol. You launch it from the command line and tell it how many message producers and consumers to simulate. By default it runs one of each, but you can configure many more parameters through command-line options. There is also a companion feature that wraps these benchmark runs and generates an HTML page with the results, which is handy for sharing findings with a team or keeping a record of how performance changes over time. This is primarily useful for engineers or teams operating RabbitMQ in production or staging environments. For example, if you are planning a big product launch and expect a surge in traffic, you could use this tool to verify your messaging infrastructure will cope. It is also practical when evaluating infrastructure changes, say you are upgrading to a larger server or adding more nodes to your cluster, and want concrete numbers showing whether the change actually improved throughput or reduced latency. The tool is distributed as a standalone Java application, a Docker image, or a library you can pull into a Java project. It requires at least Java 8, though newer versions are recommended. It is maintained by the official RabbitMQ team at Broadcom, so it tracks closely with RabbitMQ's own development. The project is open source under a triple license (MPL, GPL, and Apache), giving users flexibility in how they adopt it.

Copy-paste prompts

Prompt 1
Write a command that uses RabbitMQ PerfTest to simulate 10 producers and 10 consumers against a RabbitMQ server at localhost:5672, and explain each flag.
Prompt 2
Generate a Docker command to run RabbitMQ PerfTest with 5 producers, 5 consumers, and a message size of 1KB against my RabbitMQ container, then output an HTML report.
Prompt 3
Create a script that runs RabbitMQ PerfTest three times with increasing producer counts and saves the HTML results so I can compare throughput across runs.
Prompt 4
Help me add RabbitMQ PerfTest as a Java library dependency in my Gradle project so I can run benchmark tests programmatically from my own code.

Frequently asked questions

What is rabbitmq-perf-test?

A tool for stress-testing RabbitMQ message servers by simulating producers and consumers, then reporting throughput, latency, and other performance metrics. Run it from the command line to find out how much traffic your setup can handle before things slow down or break.

What language is rabbitmq-perf-test written in?

Mainly Java. The stack also includes Java, AMQP, Docker.

Is rabbitmq-perf-test actively maintained?

Active — commit in last 30 days (last push 2026-08-03).

What license does rabbitmq-perf-test use?

Triple-licensed under MPL, GPL, and Apache, so you can choose whichever license fits your needs when using or distributing the tool.

How hard is rabbitmq-perf-test to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is rabbitmq-perf-test for?

Mainly ops devops.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.