golang

API Loading Testing Software

A software/cli tool to perform API load testing.

CLI Spec

Arguments

  • Number of concurrent users.
  • Max timeout for a request.

Code changes

  • URL
  • Code for making the actual request.
    • Can make requests with dynamic payload/params, etc.

Golang Technical Implementation

  • Number of concurrent users = number of go routines sending requests.
  • Max timeout Done using cancel pattern in concurrency. Use context lib.

Calculating RPS There are multiple ways of calculating Requests Per Second. Here are a few ways:

  1. RPS = Total number of requests / total time taken by all requests

Future Scope

  1. Calculate P99: Response time below which 99% of all requests are completed.
  2. Calculate P50: Typical response time (median)