Performance Analysis

It is astonishing to witness how many developments of systems of various kind are undertaken with very little capacity planning or performance analysis in mind from the beginning.

If one is lucky, one can actually see some development effort geared towards what is commonly called "logging" for the purpose of error analysis and support. Those hooks are then the last resort from which performance data is hoped to be gleaned when things go bad over night.

The author had been sent out to a customer site after a 2 year development effort resulted in a system that performed badly on a 4 proc server. Armed with the basics of the analytical mathematics applied to queuing systems in steady state such as Little's Law, it turned out that the round robin scheduler was actually wrongly implemented and focus was given to techniques with neglectable positive outcome.

Faced with the expected resistance from the development team upon return, a simulation model was built based on a Colored Petri Net (CPN) that clearly demonstrated the weak spots in the overall system.

I wish to thank Dr. Neil J. Gunther from Performance Dynamics for his excellent class on Guerilla Capacity Planning.

I'm currently in the sad position to withness another "SOA" project implemented with VS.Net where in the end, credence is given to the results of a Visual Studio built in performance analysis for web services based on the click of a button. No where are queuing models to be found. When asked whether the results have been verified to be correct by simply checking the validity of the steady state assumption with Little's Law, questioning eyes were found.