IIS 7 & IIS 8
Application Initialization Module
Ah.. Hmm.. How does this work?
Last post Oct 21, 2009 12:00 AM by three_sixteen
Oct 20, 2009 01:42 AM|LINK
I hope this isn't an ignorant post, but after reading about the application warm-up module I'm not sure I'm clear on how it works?
I've got an IIS handler which opens up a database connection - but I'm taking a performance hit because I haven't been able to figure out how to recycle that database connection efficiently. If I understand, this module should allow me to do that and increase
the performance of my handler?
I've installed it and mucked around with setting it to use the handler mapping I've set up, but haven't really noticed any difference. I assume this means I'm using it wrong or not for it's intended purpose!
Oct 20, 2009 10:45 PM|LINK
Installing this module won't increase the performance magically. All this module does is let you execute bunch of URLs on process startup so that your web applications is already warmed up before it handles a real request. Before, first request to a worker
process would have caused the application initialization which potentially could cause long delay in serving the response. With this module first request won't pay a initialization penality and can get processed immediately.
Oct 20, 2009 11:53 PM|LINK
The reason you are likely not seeing an improvement is because when you make your first request, the application pool actually "warms up". Thus, your response time actually contains the aggregate of two requests.
Could you try enabling the "Start Application Pool '...' when service started" under Settings in the Application Warm-Up section of the site? If you were to restart your application pool after this, you are more likely to perceive the difference in response
times between "warmed-up" and not.
Oct 21, 2009 12:00 AM|LINK
I'm still fairly new to writing IIS handlers, but I've been trying to figure out a way that I would be able to reuse a data connection with it - and figured that maybe this application warm-up module might help.
Turns out though that my problem is that it seems to be the nature of IIS handlers to not reuse an already open connection, or I'm doing it wrong :)