1001Ferramentas
Calculators

Queue Wait Time Estimator

Estimate wait time in a queue: position × mean service time. Accounts for parallel servers (counters).

M/M/1 queue: waiting-time model

The M/M/1 model assumes Poisson arrivals (rate λ), exponential service times (rate µ) and one server. The system is stable only when utilisation ρ = λ / µ < 1. Average number in the system L = ρ / (1 − ρ); average time in the system W = 1 / (µ − λ). Example: λ = 40/h, µ = 60/h → ρ = 0.667, L = 2 customers, W = 1/20 h = 3 min. The counter-intuitive part: at ρ = 0.8, W = 1/(0.2·µ); at ρ = 0.9, W = 1/(0.1·µ) — double the wait. As ρ → 1, queues explode, which is why production systems always plan for overcapacity. With k servers (M/M/k) the steady-state solution is the Erlang C formula, the basis for call-centre staffing.

Applications

Used in web and database server sizing, call-centre staffing (Erlang C), data-centre SLA capacity planning, restaurant table turnover, emergency-room triage, traffic-light timing and intersection design. Whenever requests arrive randomly and service time varies, M/M/1 (or M/M/k) gives the first useful estimate.

FAQ

Why does 90% utilisation feel so much worse than 80%? Because waiting time scales with 1/(1−ρ): going from 0.8 to 0.9 doubles the wait, from 0.9 to 0.95 doubles it again.

Is M/M/1 realistic? Real arrivals are usually close to Poisson; service times are rarely truly exponential. M/M/1 gives a useful upper bound and is easy to compute by hand.

How do I size for k servers? Use Erlang C (M/M/k): pick the smallest k such that the probability of waiting and the mean wait meet your SLA.

What if ρ ≥ 1? The queue grows without bound. You must add capacity, throttle arrivals or shed load.

Related Tools