|
.net
newsgroups
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
ASP.NET and cache - just want to be sure[sorry if this sounds familiar but just want ot be sure] I have had a site running for 6 months now. This morning I started observing the following behaviour pretty much out of the blue: I load a blob of XML into the ASP.NET cache with a timeout of 15 mins, and a callback set up to log the unload of the data. Immediately (the same second), my callback gets driven with a reason code of "Underused", which implies that ASP.NET is feeling memory-challenged. But, Task Manager suggests that only 800Mb is being used out of 1Gb, and nothing else (SQl Server etc.) seems to have reserved the extra 200Mb memory. Why is ASP.NET immediately throwing out my newly cached 200 bytes of data? Is there any other setting I could be tweaking / monitoring to help tell me why? Thanks for any help. 80% of your total memory is a lot. By default, asp.net tries to limits
itself to 60% of the total available memory. I doubt that you'd want it to go anymore than 80%...the O/S still needs to run, and the last thing you want is any high amount of paging to the hdd. You can specify a priority for your cache, but .NET generally knows better how to manage memory than you do. You can load up perfmon and look at some performance monitors, cache hits, memory size. You can get a memory profile and try to use up less than 800megs (http://www.red-gate.com/products/ants_profiler/index.htm) You can play with your machine.config's processModel section and increase the maximum memory limit Karl Show quote "SCG" <simon@myphones.comnosend> wrote in message news:ei$eYeZ1GHA.4796@TK2MSFTNGP06.phx.gbl... > Hi, > > [sorry if this sounds familiar but just want ot be sure] > > I have had a site running for 6 months now. This morning I started > observing > the following behaviour pretty much out of the blue: > > I load a blob of XML into the ASP.NET cache with a timeout of 15 mins, and > a > callback set up to log the unload of the data. > > Immediately (the same second), my callback gets driven with a reason code > of > "Underused", which implies that ASP.NET is feeling memory-challenged. > > But, Task Manager suggests that only 800Mb is being used out of 1Gb, and > nothing else (SQl Server etc.) seems to have reserved the extra 200Mb > memory. > > Why is ASP.NET immediately throwing out my newly cached 200 bytes of data? > > Is there any other setting I could be tweaking / monitoring to help tell > me > why? > > Thanks for any help. > > Sorry - I meant that Task Manager was showing me the *total* used memory -
not just for those processes using .NET. So, I figured 800Mb was OK. What I could not / still cant understand is why it's simply not using that 200Mb spare, and instead dumping my 200 bytes out of cache with "Underused"... ....as though it can;t get to that last 200Mb (even though it's not been reserved for SQLServer 2000 or such). Thanks, Simon. "Karl Seguin [MVP]" <karl REMOVE @ REMOVE openmymind REMOVEMETOO . ANDME Show quote net> wrote in message news:%23VB31qZ1GHA.4108@TK2MSFTNGP04.phx.gbl... > 80% of your total memory is a lot. By default, asp.net tries to limits > itself to 60% of the total available memory. I doubt that you'd want it to > go anymore than 80%...the O/S still needs to run, and the last thing you > want is any high amount of paging to the hdd. > > You can specify a priority for your cache, but .NET generally knows better > how to manage memory than you do. > > You can load up perfmon and look at some performance monitors, cache hits, > memory size. > > You can get a memory profile and try to use up less than 800megs > (http://www.red-gate.com/products/ants_profiler/index.htm) > > You can play with your machine.config's processModel section and increase > the maximum memory limit > > Karl > > -- > http://www.openmymind.net/ > http://www.codebetter.com/ > > > "SCG" <simon@myphones.comnosend> wrote in message > news:ei$eYeZ1GHA.4796@TK2MSFTNGP06.phx.gbl... >> Hi, >> >> [sorry if this sounds familiar but just want ot be sure] >> >> I have had a site running for 6 months now. This morning I started >> observing >> the following behaviour pretty much out of the blue: >> >> I load a blob of XML into the ASP.NET cache with a timeout of 15 mins, >> and a >> callback set up to log the unload of the data. >> >> Immediately (the same second), my callback gets driven with a reason code >> of >> "Underused", which implies that ASP.NET is feeling memory-challenged. >> >> But, Task Manager suggests that only 800Mb is being used out of 1Gb, and >> nothing else (SQl Server etc.) seems to have reserved the extra 200Mb >> memory. >> >> Why is ASP.NET immediately throwing out my newly cached 200 bytes of >> data? >> >> Is there any other setting I could be tweaking / monitoring to help tell >> me >> why? >> >> Thanks for any help. >> >> > > Also check the settings for your Application Pool. Maybe it is not
giving you access to all of that memory. Brennan Stehling http://brennan.offwhite.net/blog/ SCG wrote: Show quote > Hi, > > [sorry if this sounds familiar but just want ot be sure] > > I have had a site running for 6 months now. This morning I started observing > the following behaviour pretty much out of the blue: > > I load a blob of XML into the ASP.NET cache with a timeout of 15 mins, and a > callback set up to log the unload of the data. > > Immediately (the same second), my callback gets driven with a reason code of > "Underused", which implies that ASP.NET is feeling memory-challenged. > > But, Task Manager suggests that only 800Mb is being used out of 1Gb, and > nothing else (SQl Server etc.) seems to have reserved the extra 200Mb > memory. > > Why is ASP.NET immediately throwing out my newly cached 200 bytes of data? > > Is there any other setting I could be tweaking / monitoring to help tell me > why? > > Thanks for any help. |
|||||||||||||||||||||||