Skip to content
Calcrivo

Connection Pool Calculator

Size a database or upstream connection pool with Little's law, and see the queue wait a pool that is too small produces.

Inputs

rps
ms
×
connections

Recommended Pool Size

29

Connections Busy on Average

21.60

Configured Pool Utilisation

54.0%

Maximum Rate the Pool Supports

2,222rps

Average Wait for a Connection

0.00ms

Assessment

Well sized

Step by step

  1. Values used

    Requests per second = 1,200 rps; Average time a connection is held = 18 ms; Safety factor for bursts = 1.30 ×; Pool size currently configured = 40 connections

  2. Connection Pool

    connections busy = request rate × hold time (Little's law, L = λW); recommended pool = that figure × safety factor.

  3. Recommended Pool Size

    = 29

  4. Connections Busy on Average

    = 21.60

  5. Configured Pool Utilisation

    = 54.0

  6. Maximum Rate the Pool Supports

    = 2,222 rps

  7. Average Wait for a Connection

    = 0.00 ms

  8. Assessment

    = Well sized

How it works

Little's law says the average number of items in a system equals arrival rate times time in system, so the connections genuinely busy at any moment is just the request rate multiplied by the hold time. A safety factor covers arrival jitter, since traffic is never perfectly smooth. Oversized pools are as damaging as undersized ones — every pooled connection is a backend process holding memory and a lock slot, which is why a 1200 rps service needs about 29 connections, not 300.

Formula

Connection Pool

connections busy = request rate × hold time (Little's law, L = λW); recommended pool = that figure × safety factor.

λ
Arrival rate in requests per second
W
Time a request holds a connection, including network round trip

Frequently Asked Questions

How is Connection Pool calculated?

connections busy = request rate × hold time (Little's law, L = λW); recommended pool = that figure × safety factor. Little's law says the average number of items in a system equals arrival rate times time in system, so the connections genuinely busy at any moment is just the request rate multiplied by the hold time. A safety factor covers arrival jitter, since traffic is never perfectly smooth.

Why does Connection Pool matter?

Oversized pools are as damaging as undersized ones — every pooled connection is a backend process holding memory and a lock slot, which is why a 1200 rps service needs about 29 connections, not 300.

What values do I need to enter?

This calculator takes 4 inputs: Requests per second, Average time a connection is held, Safety factor for bursts, Pool size currently configured. 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