It is fairly common knowledge today that modern web 2.0 technologies such AJAX and JavaScript, as well as CDNs like Akamai are required in order to create the compelling web application experience that we all expect from modern web browsers and mobile devices. It is also becoming more widely known that doing this fundamentally changes your application architecture by redistributing major portions of web application execution from back-end application servers to the end user browsers. What is less commonly understood however is that because of this, web operations teams now need a new way to identify when application performance or functional problems are due to code execution within client browsers, or perhaps in external, 3rd party service calls (Facebook, etc.) made from code executing within user browsers. Note that in many cases performance issues are perceived by end users to be the result of problems with the backend application execution and infrastructure in the data center, when in fact these problems may have nothing to do with those backend resources at all. In fact, 71% of organizations that participated in a TRAC Research survey reported that third party servives were creating significant challenges for them in managing Web performance, followed closely by challenges in managing dynamic content.

So how do you get the visibility required to discern between front and back-end application execution issues? You have to get inside the user browsers, which most mainstream web APM vendors accomplish via a sort of page tagging technique much like you would do with Google Analytics, or other web analytics tools. While this technique is simple and works quite well for tracking in-browser execution, and while some top APM vendors will try to convince you that this is all that is required for comprehensive real user experience monitoring, be careful to note that this is only part of the story.

We recently developed a pretty detailed on whitepaper on this topic. If you're interested in learning how to update your application performance monitoring strategy for Web 2.0 and AJAX, you can read it here.