Hi all,
This is my first post and i've tried searching for it but the search functionality just doesn't seem to work. =\
So here it is:
I've been reading up on IIS7 running ASP.NET apps for good reason. Reasons are to increase reliability as well as performance. The particular ASP application we're running is DotNetNuke, i'm not sure if IIS7 should be configured uniquely to handle it but so far we've been running DNN on:
- its own application pool which sports the following configuration
- Integrated pipeline mode
- Default of a 1000 queue length
- Default Idle Time-out of 20
- One (1) Worker Process
- Recycling at Regular Time Interval 29hrs
- Recycling at Specific Times 0300hrs
Currently I'm pushing for us to allocate time to view the logs created by IIS on traffic so that we can pull figures out from the charts created which could help us with
- Keeping these DNN sites alive so they don't have to recompile on request after there's been a long period of inactivity (Time-out)
- Increasing the response speed of the site. Our monitoring tools recorded three (3) performance violations in an hour. It was to pick out response times of more than three (3) seconds. This knowledge coupled with the IIS Stats could give us a business reason to drive more visitors in.
I've read that increasing Worker Processes would assist in response time and have read a few testimonials that showed evidence of it obtaining remarkable results and so have increased Worker Processes to 2 for trials.
In the meantime, I've read that InProc session states would not be maintained as each W3WP has it's own boundaries and does not share sessions. Will using ASP.NET's ViewState be affected in any way? In the future, another application that will be deployed, will use simple Sessions. Will that break?
I was hoping to obtain a cleaner site, closer to opening times, so was hoping to recycle at about 7am instead of 3am. Would that help stability at all?
In DNN, there is a KeepAlive.aspx file which refreshes every now and then. The aim was to connect to that page and let it refresh to keep the site alive. It has worked in keeping the site alive and the payload returned is extremely small, which is a plus! Couple this with traffic stats from IIS and we should have an answer as to how long to adjust keep-alive.
Are there any side-effects of increasing keep-alive? I'm guessing that keeping the connection alive for too long would reduce the availability of connections to new visitors?
Now that you know my story...
How should we go about increasing stability and performance?
- Worker Processes
- Worker Threads - Can we adjust this??
- Recycling Times
Thanks Experts!!!!