Skip to content
Calcrivo

Weighted Load Distribution Calculator

Turn pool member weights into request shares, per-pool request counts and the weighted round-robin cycle length.

Inputs

requests

Weighted Round-Robin Cycle Length

10requests

Share to Member A

50.00%

Share to Member B

30.00%

Share to Member C

20.00%

Requests to Member A

30,000

Requests to Member B

18,000

Requests to Member C

12,000

Step by step

  1. Values used

    Weight of pool member A = 5; Weight of pool member B = 3; Weight of pool member C = 2; Requests to distribute = 60,000 requests

  2. Weighted Load Distribution

    share of member i = weight_i ÷ Σ weights; requests to member i = total requests × share; the WRR cycle repeats every Σ weights requests.

  3. Weighted Round-Robin Cycle Length

    = 10 requests

  4. Share to Member A

    = 50.00

  5. Share to Member B

    = 30.00

  6. Share to Member C

    = 20.00

  7. Requests to Member A

    = 30,000

  8. Requests to Member B

    = 18,000

How it works

Weighted round robin hands out one request per unit of weight, so a member with weight 5 in a pool summing to 10 receives half the traffic. The pattern repeats once the sum of the weights has been dispensed, which is why the cycle length matters for short bursts. Weights are how you mix server generations in one pool or ramp a canary, but the cycle length means a burst shorter than the sum of the weights will not honour the ratio at all.

Formula

Weighted Load Distribution

share of member i = weight_i ÷ Σ weights; requests to member i = total requests × share; the WRR cycle repeats every Σ weights requests.

Σ weights
Sum of all pool member weights, which is also the cycle length
share
Long-run proportion of requests a member receives

Frequently Asked Questions

How is Weighted Load Distribution calculated?

share of member i = weight_i ÷ Σ weights; requests to member i = total requests × share; the WRR cycle repeats every Σ weights requests. Weighted round robin hands out one request per unit of weight, so a member with weight 5 in a pool summing to 10 receives half the traffic. The pattern repeats once the sum of the weights has been dispensed, which is why the cycle length matters for short bursts.

Why does Weighted Load Distribution matter?

Weights are how you mix server generations in one pool or ramp a canary, but the cycle length means a burst shorter than the sum of the weights will not honour the ratio at all.

What values do I need to enter?

This calculator takes 4 inputs: Weight of pool member A, Weight of pool member B, Weight of pool member C, Requests to distribute. The pre-filled defaults are a realistic starting point — replace them with figures from your own environment for a result you can act on.

You might also need