Microsoft Internet Information Services (IIS) is one of the world's most popular tools for hosting websites and applications. That's partly because it comes from Microsoft who knows a thing or two about software, more so because it is built into Windows clients and servers and uses the Windows GUI, and finally because it's pretty good for overall web and application needs serving shops from tiny to literally huge.
Many companies that rely upon Microsoft software prefer IIS over open source tools such as Apache, finding it easier to use and less troublesome when problems arise. Many smaller companies opt for IIS for these reasons, and also because it is essentially free. However, once websites are built and applications hosted, these companies have little visibility into the performance of IIS. They don't know if it is fast, slow, or has issues that cause downtime.
And having been launched in 1995, in the early days of the Web, there are a lot of IIS-based websites. Many shops started with one core site, and now have a mess of sites they need to keep running – and performing well enough to keep customers coming back.
Some experts believe that around 7% of all websites today are based on IIS, far more than Apache, although back in 2014 when there weren’t as many web platform choices, IIS was used by a full third of all sites. And IIS isn’t just for SMBs. Here are some major sites are driven by IIS:
What is IIS Monitoring and What is it Good For?
The way to make IIS shine and not stumble is IIS monitoring – discovering performance problems as they occur. You should know how much load IIS is putting on the CPU, disks, the network, and how much memory IIS is taking up.
In the early days, most users implemented IIS to run only one or maybe two websites. Since IIS has been around for over 25 years, some customers have a gaggle of websites and applications, many of which run on ASP.NET, that all rely upon IIS to perform. If performance slows or IIS goes down, all those applications are impacted.
Unfortunately, many of these IIS shops are small and don't have any network monitoring in place. Monitoring IIS is a good place to start, but rather than relying on a discrete point solution just for IIS, it makes more sense to deploy a general purpose network monitoring solution that handles IIS, along with the overall network and key applications the organization relies upon.
The Impact of Downtime
A study by Akamai discovered that nine percent of the visitors to a website will never come back if they find the site down. If you're using your website to sell products, that's nearly 10% of your business down the tubes. This is called permanent abandonment – something you clearly do not want to face. Downtime also impacts your Google ranking as the Google bots can't find your site. While your site is down, Google will drop you from the Google index for that duration.
And if your site is down for several days Google may de-rank your site completely and you will have to start your SEO journey all over again.
IIS Performance Monitoring
Out of the box, IIS supports a handful of common protocols, including HTTP, HTTPS, FTP, FTPS, and SMTP, but can be made to work with others such as TCP, PIPE, and HTTP/2. The good news is that a proper network monitoring solution will already be keeping tabs on all these network protocols.
Diving Deep into IIS Performance Monitoring Tools
IIS is a web application, and essential application performance monitoring concepts apply. WhatsUp Gold from Progress provides performance statistics and details the overall health of your application, including Microsoft IIS. At the same time, the IIS monitoring solutions alert when performance falters and spots potential problems before they turn into costly web service outages.
Large companies often have Service Level Agreements (SLA) that guarantee the performance of the website. Without website monitoring, you can't be sure IIS is up to snuff and certainly can't guarantee it. An IIS monitoring solution can measure and guarantee Service Level Agreements by spotting application performance bottlenecks and points of failure before the service level degrades.
Instead of buying an IIS-specific monitoring solution, you can buy a broader solution that tracks all your applications including your website. The network monitoring solution is viewing your entire environment in which IIS resides, looking at the health of the complete network ecosystem that supports your website.
In fact, monitoring IIS in isolation is not the best approach. An application doesn't exist just by itself but is surrounded by other elements that impact its performance. This is the notion of a complex application, and IIS may depend on other applications to do its job, for instance getting data feeds from your database application or working with key marketing tools and web optimization solutions – or depending upon SharePoint for content and files. Your network monitoring solution can track all these complementary applications and ensure they are holding up their end of the bargain.
The key to effective IIS monitoring is defining exactly what your IIS application consists of. This is done through an Application Profile, a blueprint that defines the entire collection of components and distinct applications that impact the performance, health, and status of the core application. This Application Profile creates an application instance that is then associated with the devices that host the application components.
What Does the IIS Performance Monitor Tell You?
The most helpful bits of data can also be the simplest. For instance, the current status offers information about the current state of Microsoft IIS, including up, down, warning, maintenance, or unknown. A simple status page offers clear marching orders on whether you can think about something besides IIS, need to do something immediately, or how to perform maintenance to ensure the future health of your IIS solution.
Historical and trend data is also important in seeing how IIS has been working and where it can be made better. Common problem areas spotted can finally be addressed and rectified.
Meanwhile, the Historical Status area of the IIS monitor’s status page includes details on availability, actions, state change, and issues resolved during a set time period.
Here are more Historical Status details the IIS monitor provides:
Hourly Availability: This shows the percentage of the application instances or components that were in each state (Up, Down, Warning, Maintenance, Disabled, or Unknown) over a set period.
Instance Summary: Offers availability information for the instances associated with your IIS application, including its application type definition or profile for the set time period.
State Change Log: This is a chronological log of all the changes in state for the IIS instance.
Action Log: A chronological log of all the IIS actions performed.
Resolved Items Log: Logs the Action Policies that resulted in an issue resolution.