Search code examples
performanceload-testingweb-testing

Web load testing, difference between different client thread numbers


we are doing web load testing to check how our web API perform on a specific QPS (query per second).

We have a tool to send request to our web API.

My questions is, For a given QPS, say 100, with different combination of number of client threads and requests per a thread, what is difference on Web API side.

E.g.,

  • 1 thread, 100 requests per second per thread
  • 10 threads, 10 requests per second per thread
  • 20 threads, 5 requests per second per thread.

Any difference on capacity of web API server side?


Solution

  • From server side it should be no difference, however you scenarios may not be applicable. I don't know your "tool" details, but normally web API means HTTP transport and HTTP is "request/response" protocol so given you use 1 thread you won't be able to send the next request until you receive response from the server.

    Normal "good" practice is simulating the load as close to reality as possible so you need to mimic real life usage of your web API, otherwise your load test does not make sense. So I would recommend reconsidering your load pattern to represent either real user or application which is using web API as close as possible. See Testing SOAP/REST Web Services Using JMeter guide for some insights.