?
Solved

Windows Server 2003 R2 x64 - IIS Issue (RAM)

Posted on 2013-12-26
3
Medium Priority
?
694 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 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

Get 15 Days FREE Full-Featured Trial

Benefit from a mission critical IT monitoring with Monitis Premium or get it FREE for your entry level monitoring needs.
-Over 200,000 users
-More than 300,000 websites monitored
-Used in 197 countries
-Recommended by 98% of users

Question has a verified solution.

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

Running classic asp applications under Windows Server 2008 R2 (x64) and IIS 7 is not as easy as one may think. It took me a while to figure it out while getting error 8002801d a few times. After you install the OS you will need to install the fol…
When it comes to showing a 404 error page to your visitors, you do not want that generic page to show, and you especially do not want your hosting provider’s ad error page to show either. In this article, I will show you how to enable the custom 40…
If you’ve ever visited a web page and noticed a cool font that you really liked the look of, but couldn’t figure out which font it was so that you could use it for your own work, then this video is for you! In this Micro Tutorial, you'll learn yo…
In this video, Percona Solutions Engineer Barrett Chambers discusses some of the basic syntax differences between MySQL and MongoDB. To learn more check out our webinar on MongoDB administration for MySQL DBA: https://www.percona.com/resources/we…
Suggested Courses

765 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