Search…
⌃K
Links

Benchmark

Full workload, latency, and performance report
We're excited to announce the release of our 1st benchmark report.
Memphis has been under heavy development for the past two years, and we've reached a state where we can display some actual performance numbers.

Introduction

Benchmark Version Control

Version
Date
Memphis Version
Comments
1.0
November 27th, 2022
0.4.1-beta
First release

Lab environment

Parameter
Value
Cloud
AWS
Managed Kubernetes
EKS 1.23
K8S Workers
3
K8S Worker type
Memphis brokers
3
Memphis version
0.4.1 Cluster mode
Benchmark app node
m5n.8xlarge

Test cases

  • Message size -
    • 512B
    • 1KB
    • 256KB
    • 1MB
  • Messages rate - 300msgs/sec*
(*) To align and run the same frequency across the different message sizes

Notes

  1. 1.
    In each iteration, the counter starts with the first sent message, stops at the last one, waits until the end of the second, and repeats.
  2. 2.
    Each test runs 1000 times to produce “normalized” results.
---------------------------------------------------

Produce

Method: Async.
Demonstrates latency and stability over time for the different message sizes.
As can be seen, the graph starts at 0.2ms and climbs to 0.470ms - 0.549ms
In the larger sizes, the graph starts from 26.47ms-435ms and climbs to 65.229ms-503ms
Summary table
Size
99
99.9
99.99
99.999
512B
0.411ms
0.505ms
0.545ms
0.549ms
1KB
0.388ms
0.456ms
0.469ms
0.470ms
256KB
26.473ms
58.554ms
64.622ms
65.229ms
1MB
435.940ms
502.651ms
502.983ms
503.016ms
The following graph demonstrates heavy-workload jobs, and the time the broker takes to finish a typical 1KB message size.
The following graph demonstrates the maximum amount of messages per second, per size.
The following graph demonstrates the average latency across 1000 seconds per size. As can be seen, the general trend is relatively steady across the charts and through time.

Consume

Single partition station with a single consumer.
Demonstrates latency and stability over time for the different message sizes.
Size
99
99.9
99.99
99.999
512B
62.362ms
67.355ms
69.542ms
69.350ms
1KB
62.061ms
67.219ms
69.156ms
69.350ms
256KB
407.512ms
443.794ms
482.947ms
486.947ms
1MB
1s
1s
1s
1s
The following graph demonstrates the maximum amount of consumed messages per second, per size.
Average latency over 1000 seconds