What’s new in IIS 8.5 - Microsoft Internet Information Services 8.5 New Features
This article has been moved to its new home here: https://benperk.github.io/msdn/2013/2013-06-whats-new-in-iis-8-5-microsoft-internet-information-services-8-5-new-features.html
With the release of the new version of Windows Server 2012 R2 comes a new version of IIS, IIS 8.5. The new features can be broken into 2 categories, Scalability and Manageability:
- Manageability - Logging Enhancements
- Manageability - ETW Events
- Scalability - Dynamic site activation
- Scalability - Idle Worker Process Page-out
- Certificate Rebind - see here
- dynamicRegistrationThreshold (system.applicationHost/webLimits) - see here
The following article contains a brief explanation of the new features. For a very nice and more in-depth walk through of these new features, access the information by watching this Channel9 video “Internet Information Services: What’s New in Window Server 2012 R2 Internet Information Services: What’s New in Window Server 2012 R2” here.
ETW Events
Event Tracing for Windows has been around for many years. Now it is built right into IIS. Select the Logging feature from within the IIS 8.5 management console and you will notice this new group box of additional features, shown in Figure 1.
Figure 1, new ETW logging features in IIS 8.5
If you enable ETW logging which is useful for getting a deeper look into the “behind the scenes” of what’s going on with your request, consider using a tool called Microsoft Message Analyzer to analyze the ETW log. Details of which can be found here.
Notice that you can log both ETW and standard IIS logs simultaneously.
Additional information about ETW can be found here.
Logging Enhancements
Click on the Logging feature from within the IIS management console followed by clicking on the Select Fields… button within the Log File group box. Doing this opens a window as shown in Figure 2.
Figure 2, IIS 8.5 Logging Fields windows
Notice the new section called Custom Fields. Selecting the Add Field… button opens a window as illustrated in Figure 3.
Figure 3, IIS 8.5 Add Custom Field windows
This feature allows for the logging of fields within Request Header, Response Header and Server Variables. The following bulleted list represents a small example of the selectable fields.
- Request Header – If-Match
- Request Header – Proxy-Authorization
- Request Header – Max-Forwards
- Response Header – Last-Modified
- Response Header - ETag
- Server Variable – ALL_RAW
- Server Variable – REMOTE_HOST
- Server Variable – SCRIPT_NAME
- Etc...
Also note that the Source text box is editable so you can capture custom request, response and server variables.
Dynamic site activation
When you are hosting a lot of web sites (100s) in IIS version 6/7/7.5, you may have experienced some noticable time when loading the IIS configuration file. When WAS runs it will load the configuration for all web sites hosted on the server. In IIS 8.5 a new more optimized process has been implemented to improve the performance of this activity. Note: There were also many improvements in this area found in IIS 8.0.
There is no user interface for this feature. However, the feature is configurable via the Configuration Editor as shown in Figure 4.
Figure 4, dynamicRegistrationThreshold attribute in IIS 8.5
By default, if you have less than 100 web sites / bindings on your web server, then the standard process for loading the configuration is used. The benefit of this feature is primarily realized when a large number of web sites are hosted on the web server.
Idle Worker Process Page-out
When a worker process is not used for 20 minutes, IIS will terminate the process. This is done to conserve memory and is very important on server where memory utilization is a concern. In IIS 8.5 instead of terminating the worker process when the Idle Time-out threshold is breached, you can Suspend it instead. Figure 5 illustrates the new Idle Time-out Action (idleTimeoutAction) parameter which supports either to Terminate or Suspend the worker process.
Figure 5, idleTimeoutAction in IIS 8.5, Terminate or Suspend
When the worker process is requested for the first time the binaries need to be compiled, and for some web applications this can take some time. This compilation is often referred to as warming-up or starting-up the application. If you choose to Suspend the worker process when it times-out instead of terminating it, you can avoid this warm-up process from happening in this context.
Comments
Anonymous
September 16, 2013
Sweet! Not to much so we can keep our Window Server 2012 around.Anonymous
November 07, 2013
@Very Nice, note that these are just IIS 8.5 features, there are many other features you gain when upgrading to Windows Server 2012 R2, other than just IIS features. Check here: www.microsoft.com/.../default.aspxAnonymous
December 11, 2013
Any idea if the ETW manifests are published anywhere? It would make consuming the ETW events much easier. I asked in the forum here: forums.iis.net/.../1205802.aspxAnonymous
December 04, 2014
Thanks for the suspend option. That's a very well received feature.Anonymous
July 20, 2015
The information above helps me . Thank youAnonymous
July 29, 2015
Glad it helped. Seems you question was answered on the forum. Good idea to post, thanks.Anonymous
August 25, 2015
@benjaminperkins, if I were to use the professional IIS 8 textbook, and students were running iis 8.5, would we run into any problems? Thanks- Anonymous
August 04, 2017
No, I would not expect any problems.
- Anonymous