Solved

Windows Server 2003 R2 x64 - IIS Issue (RAM)

Posted on 2013-12-26
3
671 Views
Last Modified: 2014-01-16
THE SERVER
http://i.imgur.com/b0VChGM.png

THE PROBLEM
We have about 400 websites running on this server. We had them all under 1 App Pool which we noticed kept having freezing points every now and then so we separated the websites into 4 different app pools. 100 sites per app pool.

The issue is even more evident. What happens is the PF Usage keeps going up to the max get's to about 9GB and then stalls all the websites which then we can see the PF usage starts to go down to 4GB and then starts to go back up. While the PF Usage is dropping the sites become unavailable which lasts about 1 minute.

Processes show that w3wp.exe taking up most of the Mem Usage & VM Size.

WHAT WE DID ALREADY
We have ordered more ram. It currently shows the server has 4GB of RAM. We will be increasing it to 8GB this coming Saturday.

WHAT I WOULD LOVE TO KNOW
1.  Is this enough? Is there anything else we should do to try and resolve the issue?
2.  How does PF Usage go above 4GB of RAM since we clearly only have 4GB how is it showing more than that being used?

Thank you for your help.
0
Comment
Question by:CyberAd
  • 2
3 Comments
 
LVL 18

Expert Comment

by:zc2
ID: 39740956
1. I'd prefer to keep each site in it's own app pool. You can use ADSI scripting to automate the management tasks, such as making the pools and assigning the sites to them.

2. When the server runs out of the physical memory, it uses the virtual memory which is just a file on the hard drive (imagine the speed). This is a very simplified answer, search swapping and paging on the internet for more info.
0
 

Accepted Solution

by:
CyberAd earned 0 total points
ID: 39773470
Actually the issue was a bit different and it had to do with ASP Compiled Pages.  Here are my notes on how we resolved the issue:

w3wp.exe was utilizing a lot of RAM.  So after investigation IIS 6 stores what it calls Template Caching into RAM by default.  Well all we are doing by making the below change is taking it out of RAM and putting that to go onto a drive on the website.

So here we go:
When an ASP page is accessed, IIS caches the whole of the source code, including ALL linked #include pages. The stupid thing is that even if the #include pages were already included by another ASP page previously accessed, THEY ARE CACHED AGAIN!


So what I have done is:

Open IIS
Right click on "Web Sites" -> Properties
Click "Home Directory" tab, click "Configuration"
Click "Cache Options" tab
Set "Cache limited ASP files in memory" to "5"
Set "Cache limited ASP files on disk" to whatever your disk has space for (default to 2000)

The only change was setting Cache limit ASP files in memory from 500 to a 5.  When I did that I noticed the location of where we store these files grew from 0 to 1.8GB in size.

I have changed the file storage of the sessions to be F:\IISSessions, this is an SSD 50GB drive.

Old location was: %windir%\system32\inetsrv\ASP Compiled Templates
0
 

Author Closing Comment

by:CyberAd
ID: 39784856
RAM Usage went down to a stable 3GB from 9GB.
0

Featured Post

Use Case: Protecting a Hybrid Cloud Infrastructure

Microsoft Azure is rapidly becoming the norm in dynamic IT environments. This document describes the challenges that organizations face when protecting data in a hybrid cloud IT environment and presents a use case to demonstrate how Acronis Backup protects all data.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

I've always wanted to allow a user to have a printer no matter where they login. The steps below will show you how to achieve just that. In this Article I'll show how to deploy printers automatically with group policy and then using security fil…
While rebooting windows server 2003 server , it's showing "active directory rebuilding indices please wait" at startup. It took a little while for this process to complete and once we logged on not all the services were started so another reboot is …
This Micro Tutorial will teach you how to censor certain areas of your screen. The example in this video will show a little boy's face being blurred. This will be demonstrated using Adobe Premiere Pro CS6.
This tutorial gives a high-level tour of the interface of Marketo (a marketing automation tool to help businesses track and engage prospective customers and drive them to purchase). You will see the main areas including Marketing Activities, Design …

777 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question