Skip to content

Latest commit

 

History

History
31 lines (24 loc) · 955 Bytes

README.md

File metadata and controls

31 lines (24 loc) · 955 Bytes

faulty-api

An API which simulates loaded responses to demonstrate load testing.

Getting Started

Some notes:

  • A rate limit is initialized to a default of 10 concurrent requests.
  • You may change this limit by making a POST to http://localhost:8080/limit with the following payload:
{"limit":10}
  • When the rate limit is reached requests will be made to wait until others finish.
  • Additionally, when the rate limit is exceeded faults will be injected into the system. The proportion of failed responses you can expect is based on the following formula:
PercFailedResponses = NumberRequestsOverLimit / Limit

Spec

  • GET http://localhost:8080/data
    • A basic response will be returned. The response time will be random between 0ms-500ms.
  • POST http://localhost:8080/limit
    • Change the limit for allowed concurrent requests. The default is 10.

Usage

Run from the /cmd/api directory:

go run *.go