Determining number of clients to achieve target-throughput

Continuing the discussion from The number of clients in search operation:

Hi Folks,

I found this thread on relationship between number of clients and target throughput.

@dliappis Can you help me understand how did you arrive at 30 clients?

Following are my questions

  1. How are requests generated with set number of clients to achieve the set target-throughput ? Is the trigger/generation deterministic?
  2. Is there a thumb rule that I can use to decide the number of clients based target-throughput and expected service-time ?
  3. Do the max_connections parameter of the python client play any role when triggering requests?
  4. How to execute tests in throughput-benchmarking mode? Will that give me the max. throughput my cluster can handle?


Thank you for your interest. The particular comment dates from Aug 2018, i.e. over 5 years ago, and as I am not actively involved in the specific area anymore, I'd suggest closing this topic and opening a new one in the (same) Rally category with your specific questions.

Thank you.

Each client uses one connection and does not queue up requests. If we assume a latency per request of 300ms and no time wasted client side, each client/connection can handle 3.333 requests per second. In order to serve 100 requests per second at east 30 clients/connections are required (3.333 * 30 = 100).

1 Like