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
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
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
Connection Pool
connections busy = request rate × hold time (Little's law, L = λW); recommended pool = that figure × safety factor.
Recommended Pool Size
= 29
Connections Busy on Average
= 21.60
Configured Pool Utilisation
= 54.0
Maximum Rate the Pool Supports
= 2,222 rps
Average Wait for a Connection
= 0.00 ms
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
- Load Balancer Capacity CalculatorCommonly used together
- NGINX Capacity CalculatorCommonly used together
- Session Persistence CalculatorCommonly used together
- API Rate Limit CalculatorCommonly used together
- HAProxy Capacity CalculatorAlso in Load Balancing & ADC
- WebSocket Capacity CalculatorAlso in Load Balancing & ADC