Table of Contents

  1. Throughput to an Unsubscribed Topic
  2. Queue Load/Unload
  3. Partitioned Load Scenarios
  4. Fan In/Out Load Scenarios

Overview

This report was generated using the jms-benchmark tool. It provides a comparative benchmark of messaging servers that implement the JMS 1.1 specification. It covers a wide variety of common usage scenarios. Each scenario is warmed up for 3 seconds before the performance samples are taken.

Console logs of the benchmarked servers

Throughput to an Unsubscribed Topic

A single producer sending non-persistent messages to a topic that does not have an consumers attached.

NOTE: hover over the graphs to see the legends.

With a 20 b Playload

With a 1 k Playload

With a 256 k Playload

Queue Load/Unload

Non Persistent Load

A producer sending non-persistent messages with 20 byte payloads to a queue without any attached consumers.

Persistent Load

A producer sending persistent messages with 20 byte payloads to a queue without any attached consumers. Each send requests a receipt to achieve guaranteed delivery.

Unload

A consumer receiving the messages previously sent to the queue but without any attached producers.

Fan In/Out Load Scenarios

These scenarios multiple consumers and producers communicate via one shared destination. All messages sent have a 20 byte payload.

The graphs below display the results of all the following scenario combinations:

 Non PersistentPersistent
Queue
 1 Producer5 Producers10 Producers
1 Consumer

Producer Rates (msg/s):

Consumer Rates (msg/s):

5 Consumers

Producer Rates (msg/s):

Consumer Rates (msg/s):

10 Consumers

Producer Rates (msg/s):

Consumer Rates (msg/s):

 1 Producer5 Producers10 Producers
1 Consumer

Producer Rates (msg/s):

Consumer Rates (msg/s):

5 Consumers

Producer Rates (msg/s):

Consumer Rates (msg/s):

10 Consumers

Producer Rates (msg/s):

Consumer Rates (msg/s):

Topic
 1 Producer5 Producers10 Producers
1 Consumer

Producer Rates (msg/s):

Consumer Rates (msg/s):

5 Consumers

Producer Rates (msg/s):

Consumer Rates (msg/s):

10 Consumers

Producer Rates (msg/s):

Consumer Rates (msg/s):

 1 Producer5 Producers10 Producers
1 Consumer

Producer Rates (msg/s):

Consumer Rates (msg/s):

5 Consumers

Producer Rates (msg/s):

Consumer Rates (msg/s):

10 Consumers

Producer Rates (msg/s):

Consumer Rates (msg/s):

Partitioned Load Scenarios

These scenarios sample performance as partitioned load is applied. Each destination only has 1 and only 1 producer and consumer attached.

The graphs below display the results of all the following scenario combinations:

 Non PersistentPersistent
Queue
 20 b Message1 k Message256 k Message
1x1x1

Producer Rates (msg/s):

Consumer Rates (msg/s):

5x5x5

Producer Rates (msg/s):

Consumer Rates (msg/s):

10x10x10

Producer Rates (msg/s):

Consumer Rates (msg/s):

 20 b Message1 k Message256 k Message
1x1x1

Producer Rates (msg/s):

Consumer Rates (msg/s):

5x5x5

Producer Rates (msg/s):

Consumer Rates (msg/s):

10x10x10

Producer Rates (msg/s):

Consumer Rates (msg/s):

Topic
 20 b Message1 k Message256 k Message
1x1x1

Producer Rates (msg/s):

Consumer Rates (msg/s):

5x5x5

Producer Rates (msg/s):

Consumer Rates (msg/s):

10x10x10

Producer Rates (msg/s):

Consumer Rates (msg/s):

 20 b Message1 k Message256 k Message
1x1x1

Producer Rates (msg/s):

Consumer Rates (msg/s):

5x5x5

Producer Rates (msg/s):

Consumer Rates (msg/s):

10x10x10

Producer Rates (msg/s):

Consumer Rates (msg/s):