Well, here's a quick simulation assuming request servicing follows a Poisson process. The Manipulate function takes a function and generates an interactive version of that function. So in this case it has a graph (list plot) of the simulation, along with a slider to manipulate the number of new requests (arrivals).
If you wanted to be ambitious, you could simulate different servicing distributions, and times. But that might add a whole 2-3 lines of code to the solution.
Manipulate[ ListLinePlot[ RandomFunction[QueueingProcess[arrivals, 60/8] , {0, 50}][ "Path"]], {arrivals, 1, 30}]