Chapter 4. Introduction to Queuing Theory

 

Numbers are the highest degree of knowledge. It is knowledge itself.

 
 --Plato

Queuing theory is not developed specifically for improving the performance and scalability of a software system. It's generic and applicable in many fields. It's developed for computing and optimizing the efficiency of any system that achieves its objectives by consuming multiple resources optimally. Queuing theory can be applied to computing and optimizing the efficiency of the following:

  • Industrial production processes such as automobile manufacturing process, semiconductor manufacturing process, or any manufacturing process that requires optimally utilizing various resources to achieve maximum possible efficiency

  • Customer call centers that handle large volumes of customer service requests everyday

  • Telecommunication systems consisting of networks, switches, and routers that process large volumes of network packets everyday

  • Computer systems that execute large volumes of requests from active users or transactions regularly scheduled as batch jobs

What are the benefits of learning queuing theory for solving your software performance and scalability challenges?

Queuing theory can help you understand all software performance and scalability concepts more formally. You might have heard that software performance is more of an art than a science. This is a misconception. As you will see, in the framework of queuing theory, all software performance concepts such as response ...

Get Software Performance and Scalability: A Quantitative Approach now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.