Have a website? You probably should think of performance monitoring
I was once product manager for a SaaS platform, helping take it to market and grow it to a pretty significant business. We sold globally, with our application servers in the US. At one point, we noticed a significant uptake in leads coming in from Australia, but not a lot of conversion. After seeing this happen for a few weeks, we decided to investigate. There wasn’t an issue with our positioning, and none of our manual or automated functional tests failed. But the devil was in the details.
Turns out, our performance in the region wasn’t meeting the expected SLAs. In fact, our page load time during peak times was around 60% higher than expected. As a result, the end user experience was completely compromised, causing users to completely drop off at a certain point in their evaluation.
That metric hurts as a product manager.
We could have determined this easily had we taken a simple measure when scaling. That measure was monitoring.
What is application monitoring?
The dictionary definition of monitoring is to observe and check the progress or quality of something over a period of time; keep under systematic review.
Of course, you can’t keep manually pinging your website and seeing if everything works all the time, which is why we have synthetic monitoring tools, which simulate user behavior across predefined transactions from different parts of the world across various operating systems, browsers and devices. It provides out-of-box reporting in terms of uptime and performance for key business transactions.
And if you think this is something that may be useful to you as a product manager or QA engineer, you’re not alone. The application performance monitoring market is set to be valued at 15.18 Billion USD by 2024, growing at 28.32% CAGR! So you can imagine a lot of products vying for your attention if you ever decide your websites or APIs need monitoring.
But in a time when there’s over a billion websites and APIs, you can imagine there’s more than one way to monitor your digital assets.
Different types of monitoring
There are many methods to monitor website performance and from my research depending on what metrics and methodologies matter the most to you.
- Uptime monitoring: Regular check of your website for availability from different locations
- Page load monitoring: Load time analysis for different elements of the page
- API monitoring: Monitoring the responses of application programming interfaces (APIs) and checking for performance and functional correctness
- Synthetic monitoring: Transactional monitoring, ensuring application can function correctly while still meeting SLAs across the world. It works by issuing automated, simulated transactions from some robot like client engine accessing your application to mimic what a typical user might do. Synthetic monitoring allows you to proactively find issues in your websites before your customers do.
- Real user monitoring: Performance analysis of real users, collecting data coming in from real user transactions so what is monitored is only what actual users are doing. Real user monitoring can show you what is happening to users as they access your application, but this is a reactive form of monitoring. If there are ever issues that do happen in your production site, you’ll know of it after the fact.
Depending on the type of digital assets you care about, you may want to set up internal or external monitors. The former is for websites and components that can’t be accessed from the public world wide web, while the latter is for publicly available websites and APIs.
Good tools for monitoring
There’s quite a few tools out there, and I’m sure a quick Google search would reveal a plethora of options to choose from. But these are some well known tools I’ve had the pleasure of personally using.
In closing, monitoring is something people think of after they’ve experienced a significant business loss due to website crashes and poor performance. Stay ahead of the curve.