简体   繁体   中英

Determine memory used by asp.net cache in shared hosting

According to this question , I want to know if asp.net's system.web.caching.cache is good for me, or I should use database caching?

So, I need to know how much memory is being used by system.Web.caching.cache? But since I am using a shared hosting server, I can't use task manager. Is there any way to determine how much memory is used by system.web.caching.cache using some code?

One fast way to see how many working memory your application use is to direct ask the garbage collection.

long bytes = GC.GetTotalMemory(false);
txtMemoryUsed.Text = bytes.ToString();

and use this literal <asp:Literal runat="server" ID="txtMemorysUsed" EnableViewState="false" />

But you can get more details using the PerformanceCounter , for example you can get how many virtual memory the pools used by this code:

 var oPerfCounter = new PerformanceCounter();
oPerfCounter.CategoryName = "Process";
oPerfCounter.CounterName = "Virtual Bytes";
oPerfCounter.InstanceName = "aspnet_wp";
txtMemorysUsed.Text = "Virtual Bytes: " + oPerfCounter.RawValue + " bytes";

You can use all this parameters to get information's for your pool.

Processor(_Total)\% Processor Time
Process(aspnet_wp)\% Processor Time
Process(aspnet_wp)\Private Bytes
Process(aspnet_wp)\Virtual Bytes
Process(aspnet_wp)\Handle Count
Microsoft® .NET CLR Exceptions\# Exceps thrown / sec
ASP.NET\Application Restarts
ASP.NET\Requests Rejected
ASP.NET\Worker Process Restarts (not applicable to IIS 6.0)
Memory\Available Mbytes
Web Service\Current Connections
Web Service\ISAPI Extension Requests/sec

for example, this parametres get the cpu load.

oPerfCounter.CategoryName = "Processor";
oPerfCounter.CounterName = "% Processor Time";
oPerfCounter.InstanceName = "_Total";
txtOutPut.Text = "Current CPU Usage: " + oPerfCounter.NextValue() + "%";

reference: http://msdn.microsoft.com/en-us/library/ms972959.aspx

relative: Monitoring ASP.NET application memory from within the application

I have test that on local iis and works.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM