-
Epic
-
Resolution: Unresolved
-
Major
-
None
-
None
-
None
-
AMQ Performance Regression Tests
-
False
-
False
-
To Do
-
0
-
0%
-
Undefined
-
Currently AMQ brokers doesn't have proper performance regression tests nor any baseline for each specific version if not the one of the opiske's Maestro tool or our version of https://github.com/softwaremill/mqperf (thanks to the effort of dlenoch@redhat.com).
The former is not maintained from long time and won't play nice with the RH performance team load generator (https://github.com/Hyperfoil/Hyperfoil), while the latter is focused on the test case for the https://softwaremill.com/mqperf/ blog post.
There's some value to maintain a version of the mqperf benchmark in our Ci for public exposure, but, both from an engineering perspective and for customer engagement we need a proper reproducible set of performance tests that we could share with customers and use to check regression before any broker release or significant changes.
This epic is about:
- implement tools to compose performance test use cases/scenarios: these "building blocks" could be used by engineer/community users to run simple tests in their local environment too eg in the form of existing Artemis CLI commands
- run the performance test scenarios on the RH Performance Team CI (or on our Messaging QE CI)
- collect results and telemetry to both capture regressions and share it with users/customers
The 2 client protocols under tests are AMQP and CORE and we're interested first in building simple scenarios until testing more complex one, matching specific customers use cases.
Simple scenario involves:
- non-durable, durable messages
- transactions
- paging
- large messages
- multiple/single producers/consumers/subscribers
- different size of messages
- response under load ie target throughput benchmarks and all-out benchmarks
- message load balancing tests (multi broker)
- replication (multi broker)
- mirroring (multi broker)
Candidate customer scenarios:
- send/receive durable messages while paging
- multi protocol tests eg producer with protocol X, consume with protocol Y
- mqtt scalability tests
- ...
- relates to
-
ENTMQBR-8223 [QE] Implement regression performance testing test suite into Claire/CI jobs
- To Do
- links to