IIS 7 and Above
Application Initialization Module
doAppInitAfterRestart and initializationPage not working on IIS 8.5
Last post Dec 02, 2014 11:43 AM by huangjinshe
Nov 23, 2014 11:17 AM|huangjinshe|LINK
I'm use asp.net mvc6 on IIS 8.5, set the app pool to Always running. set the website to auto preload = true already.
but only when the IIS recycle , it will fired the Application_Start() on global.asax.
but when I start, restart website or modify web.config. it not fired Application_Start() on global.asax.
even I set the initializationPage and doAppInitAfterRestart=true. it newer send fake request when start, restart, or modify web.config.
<add initializationPage="/a=initial_auto" />
I really don't understand. Why we should wait the user send first request? You guys all know, the IIS first request will take very very long time. Why we just don't let it auto send a request , then user access more fast after that.
I just want to it firing the Application_Start() on global.asax. because I can add some fake request myself. I even don't need IIS send fake request. I just want to website no matter start , restart, or modify web.config. or rebuild, recycle . it always
can firing Application_Start().
Why the Microsoft don't do that? wake up Microsoft.
Nov 26, 2014 09:22 AM|Perkinsville|LINK
I wrote a few blogs about this configuration here:
http://blogs.msdn.com/b/benjaminperkins/archive/tags/application+initialization/ make sure you have done everything in them.
Also, AI will send a request only to http://localhost:80 and to no other location. YOu can configure to call a page deeper into the site, I.e. a sub directory for example, but it will not call other ports or hostnames.
Nov 27, 2014 01:38 AM|huangjinshe|LINK
Hi Benjamin, thank you for replay.
1. I already set Default pool (.net4 Integrated mode) ) to always running. recycle time only when morning 6:00 execute (other recycle all set to 0, which mean, it will only execute morning 6:00).
then I set my website(X1) to enableproload = true.
Then I can see the log, it really will execute every morning 6:00. I can see because I add some code on Application_Start() on global.asax. when the recycle finish, the Application_Start() fired, I use my code send a fake request. because I
don't need use it send, it limit so much, so many. it only can sue localhost....(use said)
but when I add my another website(X2). the all setting it just same, but it always can't fired Application_Start() at 6:00. (but another website x2 can). some times it fired it on 23:00. 9:00.....I don't understand why, also I already try the
suck feature: initializationPage. it newer send the request. (my host name is my server local IP. )
the 2 website never firing the Application_Start() when the website stop and start, restart, or release, change web.config.
So I really think we just need some feature, when every time recycle, or stop and start website, release , change web.config it will can firing the Application_Start(). then we can warm all. that's all. but I don't understand Microsoft developer
thinking what, why just give us this feature, so simple.
Dec 02, 2014 11:43 AM|huangjinshe|LINK
Is that so hard let the Application_Start() firing when : start, restart, release website or modify web.config, recycle IIS?
I really don't understand the IIS developers......
We sick of the warm problem already has been 10 years. that's why Microsoft never doing like apple good. just a simple problem but not handle....
We even don't need application initial feature or let IIS send fake request. We only just need it firing application_start(). then we can warm up it, also we can made a request if we need.(the initial feature limit so many, I think we own fake request more
better than that)