Queueing is the organization of tasks or entities
into a waiting line for processing or service, often governed by
rules like first-in-first-out (FIFO) or priority-based access.
When too many kids want one slide at the playground, you have to make a line. The slide can only take one kid at a time, so everyone waits their turn. The longer the line, the longer you wait. If too many kids show up too fast, the line gets really, really long.
Lines That Form for Service
Queueing is what happens when stuff waits to be served by something with limited capacity, like cars at a toll booth or people at a checkout. The line depends on how fast things arrive, how fast they can be served, and how many servers there are. There's also a rule for who goes first (usually whoever arrived first). One important thing: if a server is almost always busy, even small bursts make the line shoot up fast. That's why busy places feel so painful to wait at.
Waiting at a Limited Server
Queueing is the structured buildup of work items, customers, packets, cars, or jobs, waiting for service at a resource with limited capacity. To describe a queue you need to know the arrival pattern (how often things show up), the service pattern (how long each takes), the number of servers, and the queue discipline (first-in-first-out, priority, etc.). Queueing theory gives mathematical tools for predicting wait times and throughput. A key result, Little's law, says the average number in the system equals the arrival rate times the average wait time, regardless of discipline. Another key insight: as utilization approaches 100 percent, waiting time grows without bound, which is why busy systems feel disastrous even though everything technically still works.
Queueing is the structured accumulation of work items (requests, customers, packets, cars, patients, jobs) awaiting service at a resource with finite capacity, together with the rules (queue discipline: FIFO, LIFO, priority, random) and parameters (arrival process, service process, number of servers, buffer size) that determine how items wait, how long, and with what predictability. The mathematical analysis is queueing theory, which gives quantitative tools for predicting wait times, utilization, throughput, and loss under different workloads. Every queueing model specifies an arrival process (deterministic, Poisson, or general; rate lambda), a service process (deterministic, exponential, or general; rate mu per server), the number of servers and buffer capacity (notated in Kendall's notation as M/M/1, M/M/c, M/G/1, etc.), and a queue discipline (FIFO, LIFO, shortest-job-first, priority, processor-sharing, fair queueing). Little's law (L equals lambda times W) is a universal relationship between average number in system, arrival rate, and average time in system, independent of discipline. A critical practical fact: as utilization rho approaches 1, mean wait time diverges, producing queue explosion. Foundations include Erlang's telephone-traffic work (1909), Kendall's notation (1953), Little's law (1961), and Jackson networks (1957).
A BFS (Breadth-First Search) queue in graph
algorithms mirrors people standing in line for a resource: one is
served at a time, and new arrivals join the end of the queue.
Parents (2) — more general patterns this builds on
Queueingis a kind ofAllocation — Queueing is a kind of allocation that distributes finite service capacity across arriving demands by determining who waits and for how long.
QueueingpresupposesFlow — Queueing presupposes flow because waiting only arises when an inflow of work items meets a service capacity that constrains throughput.
Queueing is not Scheduling because Queueing characterizes the stochastic dynamics of waiting through arrival and service distributions (Kendall notation A/B/c), whereas Scheduling is the deterministic assignment of tasks to times and resources to minimize makespan or lateness.
Queueing is not Chunking because Queueing models the waiting behavior of discrete items in a system with finite service capacity, whereas Chunking restructures information items into consolidated units to reduce cognitive load.
Queueing is not Layering because Queueing describes the temporal flow and waiting of work items, whereas Layering is the architectural decomposition into horizontal strata with unidirectional dependencies.
Queueing is not Pipeline because Queueing models the waiting phenomenon when demand exceeds capacity, whereas Pipeline is the staging of sequential steps allowing concurrent execution of items across different stages.