[Feature] SMP: Distributed Load Testing Capability with Nighthawk #415
Labels
area/performance
Performance management
kind/feature
New major feature or request
language/go
Golang related
Prologue
Many performance benchmarks are limited to single instance load generation (single pod load generator). This limits the amount of traffic that can be generated to the output of the single machine that the benchmark tool runs on in or out of a cluster. Overcoming this limitation would allow for more flexible and robust testing. Distributed load testing in parallel poses a challenge when merging results without losing the precision we need to gain insight into the high tail percentiles. Distributed load testing offers insight into system behaviors that arguably more accurately represent real-world behaviors of services under load as that load comes from any number of sources.
Current Behavior
The goal of an adaptive load controller is to determine the maximum load a system can sustain.
The maximum load is usually defined by the maximum requests per second (rps) the system can handle. The metrics (CPU usage, latency etc) collected from the system under test are the constraints we provide to judge whether a system under test (SUT) is sustaining the load.
A use-case that fits very well is be the ability to use it to run performance tests on a schedule and track the maximum load a system can handle over time. This could give insights to performance improvements or degradations.
Desired Behavior
Prerequisites
Future Goals:
Acceptance Tests
Mockups
Contributor Guides and Resources
The text was updated successfully, but these errors were encountered: