Condividi tramite


Application Initialization UI for IIS 7.5

IIS Application Initialization for IIS 7.5 enables website administrators to improve the responsiveness of their Web sites by loading the Web applications before the first request arrives. By proactively loading and initializing all the dependencies such as database connections, compilation of ASP.NET code, and loading of modules, IT Professionals can ensure their Web sites are responsive at all times even if their Web sites use a custom request pipeline or if the Application Pool is recycled. While an application is being initialized, IIS can also be configured to return an alternate response such as static content as a placeholder or "splash page" until an application has completed its initialization tasks.

> Improved customer experience while the Application is warming up

> Decrease the response time for first requests by pre-loading worker processes

> Increase reliability by pre-loading worker processes when Overlapped Recycling occurs

 

There is no UI available for application initialization release and we have to configure it using appcmd commands. To simplify its usage and to understand its features, I have written a UI module for it.

There are two level of settings that need to be done configure Application Initialization:

1. Application pool level 

 

 2. Website level 

 

Installing the module:

I have attached the installer for 64 bit and could be used for Windows Server 2008 R2 and Windows 7 x64. 

Prerequisite: Before installing Application initialization UI module from the download in this blog, please install Application Initialization

https://www.iis.net/download/ApplicationInitialization

P.S. I have also attached a sample splash page that could be used while application is initializing. 

 

References:  

Application Initialization for IIS 7.5

https://www.iis.net/download/ApplicationInitialization 

IIS 8.0 Application Initialization

https://learn.iis.net/page.aspx/1089/iis-80-application-initialization/

 

Blogs that helped me write this module:

https://blogs.msdn.com/tess/archive/2008/08/28/creating-a-ui-module-for-iis7-to-watch-current-requests.aspx

https://blogs.msdn.com/b/puneetgupta/archive/2009/08/03/where-is-the-client-certificates-ui-in-iis-7-0.aspx

https://blogs.msdn.com/carlosag/archive/2008/11/10/CreatingSetupProjectForIISusingVisualStudio2008.aspx

ApplicationInitializationInstaller_x64.zip

Comments

  • Anonymous
    March 03, 2013
    How do I start your UI interface?  The installer only adds a dll in the ApplicationInitializationInstaller folder???
  • Anonymous
    March 06, 2013
    hello Stan, you will see the feature in IIS Manager at server level as well as web site level. Make sure you install AppInit module before installing the UI module: www.iis.net/.../ApplicationInitialization
  • Anonymous
    March 14, 2013
    Hi Amol,Thanks for your efforts, but I was wandering if we can go a bit further: can IIS itself initialize the web site, without that first user interaction? Let me explain: my constraints are I’m using WCF on a web application and I have a singleton object ([ServiceBehavior(InstanceContextMode = InstanceContextMode.Single)]) that does a lot of heavy lifting on the first call itself. I need that heavy lifting done every time there is a recycling of any kind in IIS. This is a “Web Service” site, so the splash screen does not do any good in this scenario. I tried the Preload setting only and set the Recycling to 2 minutes in order to test. I follow what is happening in Task Manager then the worker process gets recycled, and there is no “ping” to preload my app. Could you shed some light?Thanks!
  • Anonymous
    March 14, 2013
    Also, a bit of spell checking: SkipManagedModlues (sic!)
  • Anonymous
    March 17, 2013
    You may still use Initialization page and make a dummy call to your WCF service so that initial heavy lifting is done on this dummy call itself.Hope this helps!
  • Anonymous
    August 07, 2013
    The comment has been removed
  • Anonymous
    September 09, 2013
    I just wanted to let you know that there is an issue with the installation of the IIS Application Initialization Module for IIS 7.5. The installation failed if KB2763973 is installed as it tries to install KB2684600 which is superseded.I uninstalled KB2763973 and the installation worked. I am guessing the same issue happens when KB2708585 or KB2723776 or KB2646886-v2 are installed.I tested on 2008 R2 but the same happens in Windows 7 probably.
  • Anonymous
    October 16, 2013
    I've installed the module and it does show the sites and app pools that are currently set, but the drop down menu's aren't populated.
  • Anonymous
    October 17, 2013
    This GUI is very unstable... there is no other GUI for this??
  • Anonymous
    January 14, 2014
    Well done - thanks a lot. Worked straight away on my 2008 R2. Used it on a subapplication.
  • Anonymous
    February 03, 2014
    For me also worked great. No issues.
  • Anonymous
    March 27, 2014
    The comment has been removed
  • Anonymous
    May 27, 2014
    Nice utility. Well done! Works great for me.
  • Anonymous
    June 03, 2014
    I tried Application Initialization for a WCF service based application. I want a WCF service to be called that does the warmup. However, I was not able to get this to work. I followed the intructions provided on the official IIS 8 Application Initialization web site and got the demo app to work. But when I configure my web.config to call my service by nominating a .SVC URL nothing happens (no warmup, no error). The section in my web.config looks like this:<applicationInitialization skipManagedModules="true" >     <add initializationPage="/Service1.svc" /></applicationInitialization>My IIS seems to call somewhere into the Service1 because when I change the URL to something non-existing I can see an error message isued by IIS in the windows event log.So my question is: How do I get things setup for a WCF service? Or putting it in other words: What method of the service class that serves as the code  behind for Service1.svc gets called when I setup a warmup URL pointing to the .SVC? I put trace code into the constructor but that never gets executed.Any help will be appreciated.
  • Anonymous
    July 30, 2014
    Where is the UI pakage for x86 Version?Thanks a lot
  • Anonymous
    October 09, 2014
    Installed this modeule. It works good on some of my environments (Win 2008R2 and Win 7), but on one environment (Win 2008R2) it does not work. All drop downs are empty so I cannot configure application pools and applications.