Chapter 5. Case Study I: Queuing Theory Applied to SOA
"Think simple" as my old master used to say—meaning reduce the whole of its parts into the simplest terms, getting back to first principles.
|--Frank Lloyd Wright|
Queuing theory was developed for solving real problems. Specifically, in the field of software, queuing theory can be used not only for analyzing the performance and scalability bottlenecks of existing software applications based on traditional software architectures, but also for predicting the performance of software applications based on emerging software technologies such as the service-oriented architecture (SOA).
As a case study, this chapter will demonstrate how queuing theory can be applied to predicting the performance of SOA-based software applications. A well-developed sample medical record application built on BEA's XML Web services framework was used for this exercise.
Along with presenting this example, I'll show you how to carry out software performance tests with an end-to-end, well-thought-out procedure that consists of setting up a test bed, deploying the application, designing and implementing test scenarios, running the tests, collecting performance counters, and analyzing the test results. This procedure can be used as a reference for you to design and execute your performance and scalability tests as well.
Another purpose of this chapter is to help reconcile people's doubts about queuing theory such as "Is queuing theory accurate?" and "Does it really ...