Queueing Theory For Software Engineers

Bartłomiej Żyliński
8 min readOct 27, 2022

In this part of the Math Behind Software series I will be taking a closer look at a branch of mathematics known as queueing theory and its potential applications in the world of software engineering.

I will describe some basics around the queueing theory, explain the basic laws from said theory and show you the equations which can be used to estimate queue throughput.

I will end with a short example of calculating service capacity with all the things explained earlier. Let’s start with a quick recap of what was described in the previous part, which can be found here.

Contention and Coherency — Recap

In previous part of the series I explained contention and coherency delay and their impact on our systems performance. I brought up concepts like Amdahl’s Law, which is focused around measuring the impact of contention and Universal Scalability Law (Gunther’s Law) which additionally accounts for coherency delay. I described them and presented their equations. I also plotted graphs to show the difference in numbers between both Laws.

How Both Parts Are Related

As you may have noticed while reading through the previous part, getting real numbers from either Amdahl’s Law or Universal Scalability Law is quite a task and…

--

--