Purpose and Overview

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.

Project Aim

The main aim of this project is to enhance the current load generation and analysis technique of Nighthawk to include distributed load testing which may ultimately benefit the meshery to directly adopt the distributed load generation.

Project Goals

Need for the Project

Currently, Meshery which is a multi-service mesh management plane which can operate & adapt to various different service meshes only supports a single way load testing. Understanding the need to support a variety of performance testing scenarios, Meshery has been equipped with a load generator interface as a point of extensibility to support the use of different load generators (see Meshery Extensibility documentation). Meshery Load Generation currently has been equipped with support for both wrk2 and fortio, neither of which support distributed load testing.

Why NightHawk

Nighthawk is a versatile HTTP load testing tool built out of a need to drill HTTP services with a constant request rate. It can be used both as a command-line utility and a library.

Contributors

This project is being developed by Kush Trivedi as a Google Summer of Code project with the CNCF and in collaboration with Layer5 and Google.

Here is the design document for invoking distributed load generation & performance benchmarking using nighthawk.

Participate in the CNCF Service Mesh Working Group

Jump into the #performance channel to learn more about this initative.