At this time of year my thoughts turn to entertaining the family during their holiday visits. Being a gadget oriented geek, this means tuning the home theater and music systems. Coincidentally these thoughts mingled with my more usual contemplations about the challenges of Application Performance Management (APM). Before I share the collection of esoteric analogies, I feel compelled to explain the title of this blog. It is a tribute to the 1967 Sergio Leone movie A Fistful of Dollars and 1984 parody A Fistful of Travellers’ Cheques.
To keep the blog short went with a Sloth fistful.
Tune from the source
The application delivery chain is all about delivering a quality experience to your application consumer from the data center to the client device. Just as it pays to tune your audio system for the source to the output device, you need to manage your application delivery chain from the source. I always invest most in the finest moving-coil cartridge and tapered carbon-fiber tone arm with modest speakers to guarantee the most faithful reproduction of the original recording. Otherwise you are simply amplifying garbage.
Similarly with applications, start tuning at the source. You tune the back-end first. For example if the omission of a critical database index means your bank balance query takes longer than your 3 seconds your consumers expect, you are guaranteed to disappoint them by the time you add network delays.
Consider the last mile
Many of my friends watch Netflix through a Nintendo Wii console connected to their 50-inch HD flat-screen TV. I beg them to invest $99 in an Apple TV, so they can experience the full splendor of 1080p HD programming. Netflix have created a fabulous library of HD content, which is just too good to be down-converted by a Wii to a 480i RCA connection. What a waste! HDMI connections maintain the purity of the digital signal all the way to the screen. Don’t compromise at the last mile.
Application developers often fail to pay enough attention to the last mile by only measuring performance from backbone locations. You have to measure from the device to get real users application response times. If you don’t optimize your app for mobile browsers being accessed over carrier networks for example you could be frustrating a growing proportion of your consumers.
Monitor third party contributors
When enjoying music at home, I am always on the lookout for third party interference. So I use well insulated cables, minimize the number of speakers other than my audio system in the room and use non-sampled sources like vinyl LPs.
You have developed a finely tune app. So are your consumers still complaining? Could it be slow Ad networks, Social Media providers or a slow CDN slowing you down? With so many contributors joining your app at the device or browser, you need to be monitoring at the consumers device.