I'm interested in modeling a server application where the normal flow of data is as follows:

Server A -> Server B -> Server C -> Server B -> Server A

That is to say, a job originating from A makes a round trip to B and C, and back to A via the same path.

This essentially means that each server is consuming two queues and producing to two queues.

What I'd like to investigate is the effect of different servicing schemes in each server, given information about the rate at which A produces jobs and the service times for servers B and C.

For example, two simple schemes would be:

  1. Round robin consumption of the two queues
  2. Greedily consume from each queue until no more jobs are available, and then switch to the next queue.

I've done some reading on queuing theory, but most of the examples I've been able to find deal with consumption of a single queue. It seems like this scenario is some combination of multiple queues / tandem queues? I'd appreciate a nudge in the right direction to continue researching this.


I guess you're looking for (closed) Jackson networks. Queueing networks of this form have an (easy) product-form solution. More advanced networks of queues are, in gerneral, difficult to study.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.