Web performance issues start like classic murder mysteries: we see something is afoul, but we have no idea what caused it.
It can be frustrating for the organization, which often spends more time isolating the root cause of performance issues than on repairing the problems. It’s frustrating for the end user too, who is likely a customer trying to conduct business with your organization.
Web Performance Monitoring (WPM) is more than about understanding whether a site and its applications are functioning normally. It’s about having the ability to process, correlate, and normalize the data needed to isolate the problem so you can take action.
Because a primary purpose is root cause identification, WPM solutions are deployed by developers as often as by IT operations. In fact, the importance of having full visibility and control into application performance impacts nearly all major IT and business goals, and WPM is appearing as a part of nearly all major IT initiatives, from cloud migrations to mobile strategies.
This blog post is the first in a three-part series that will explore WPM from three directions: 1) What is WPM exactly; 2) Why WPM is important to a wide variety of business functions from sales to security; and 3) How WPM mitigates performance risks and helps direct future optimization.
So, what is WPM, exactly?
WPM is not a single technology. Rather, it’s a range of technologies used to monitor the successful delivery of applications to end users.
At its core is the monitoring of foundation services. These services include HTTP and HTTPS performance, DNS resolution, TCP connect time, time-to-first byte, content downloads, and redirects.
On top of those are Web Services Monitoring functions, which include SOAP and REST Web service monitoring for both single and multi-step interactions. At this level, WPM is monitoring for things like network connectivity errors, socket-based error, HTTP protocol errors, SSL errors, and authentication errors. At the same time, it’s looking for End Point Availability, Remote Method Availability, Remote Method Response Time, and Remote Method Returned Data to ensure the accuracy of expected values returned using a keyword.
WPM measures the response time of your site services and Web pages against designated performance thresholds. When a response time exceeds the performance threshold, a notification is issued.
Thresholds can be either dynamic or static comparisons. Static performance thresholds are a fixed value, with performance threshold notifications being reported any time the fixed value is exceeded. Dynamic performance thresholds are a percentage value typically made by comparing a Web page’s current average response time to its historical average response time.
Since we are talking about the “world-wide” Web, WPM must monitor these metrics from many points around the globe—preferably from the same locations as your customers. So, in addition to performance thresholds, we also have the idea of location thresholds.
And let’s not forget mobile. Since global users are increasingly mobile, WPM needs to execute its performance monitoring tests using actual mobile carrier networks for each local geography you wish to monitor.
Those are the basics of WPM, but how does that help with “perceived performance”—what your website visitors are actually experiencing? After all, who cares that servers are responding quickly if users abandon a task because they believe the application is slow? And so what if a Web page loads in less than 2 seconds if it delivers the wrong content to the visitor? The user’s experience is quickly becoming the only metric that matters. So, the question really should be “How do we monitor that?”
The Web browser is becoming a focal point for APM.
Because application design makes extensive use of Web Services, the ability to monitor the processing that takes place within the browser has become critical. But while a number alone may indicate a problem, it can’t tell the story of what the user is experiencing. We need to see each step in the transaction and how the application is performing at each stage, including the loading of source code, images and third-party objects, and we need to see whether there are differences from browser to browser.
Think of it as a playback of the experience. Each step is measured according to how long until it starts loading and until it finishes. Now you can see your site’s performance from your user’s point of view.
If you go one step further, and merge Google Analytics data with your WPM metrics, you can get incredible insight into how changes in performance are affecting visitor behavior. The WPM story suddenly becomes a story of business impact on your brand and your bottom line. And the question of where to invest your time and dollars on optimization is no longer a mystery.
As mentioned, this post is the first in a three-part series on Web Performance Monitoring. Be sure to stop by for our next post where we’ll talk about why WPM is important to a wide variety of business functions from sales to security.
- Uncovering the Best Fantasy Football Service Provider [Infographic]
- The Problem with Time-to-Interact (TTI)
- Exploring the Internet of Things