简体   繁体   English

内存消耗.Net应用程序(Azure网站)

[英]Memory consumption .Net Application ( Azure Websites )

We are using Azure Websites as our platform provider and I am debugging some memory problems related to a managed application that we need a practical way of knowing why my application consumes so much memory . 我们使用Azure网站作为我们的平台提供商,我正在调试与托管应用程序相关的一些内存问题,我们需要一种实用的方法来了解为什么我的应用程序会消耗这么多内存。

We have got like 50 users online but consuming 1.5 GB of IIS process coming from 120 threads. 我们有50个在线用户,但是从120个线程中消耗了1.5 GB的IIS进程。 I tried taking memory dump but I did not get enough clues to solve the problem. 我尝试了内存转储但我没有得到足够的线索来解决问题。 In the past I was using yourkit.net profiler. 过去我使用的是yourkit.net分析器。 It was so smooth to spot the issues as I was able to monitor the thread and their memory usage. 发现问题非常顺利,因为我能够监视线程及其内存使用情况。

My working set as the amount of memory in the private working set plus the amount of memory the process is using that can be shared by other processes is very close to the private_memory. 我的工作集作为私有工作集中的内存量加上进程正在使用的可由其他进程共享的内存量非常接近于private_memory。

My private bytes is the current size, in bytes, of memory that my process has allocated that cannot be shared with other processes. 我的私有字节是我的进程分配的内存的当前大小(以字节为单位),无法与其他进程共享。 So it looks like I am using all these memory. 所以看起来我正在使用所有这些内存。

But could not decide how come I use this much memory. 但无法决定我怎么用这么多记忆。 Every user costs like more than 25 megabytes for my system. 我的系统每个用户的成本超过25兆字节。 And that creates a real concern for my scalability. 这对我的可扩展性产生了真正的担忧。

I installed NewRelic and I did not get so much help from there. 我安装了NewRelic,但我没有得到那么多的帮助。

Azure网站

新遗物

Why don't you download the GC dump and analyse it on your laptop (I use Visual Studio Ultimate, but maybe yourkit.net profiler can import it as well?) 为什么不下载GC转储并在笔记本电脑上进行分析(我使用Visual Studio Ultimate,但也许yourkit.net分析器也可以导入它?)

GC转储

Take a look at the DaaS site extension (you can access it from http://.scm.azurewebsites.net). 查看DaaS站点扩展(您可以从http://.scm.azurewebsites.net访问它)。 It has a memory dump analyzer which can analyze your memory dumps for you and highlight any issues that it finds. 它有一个内存转储分析器,可以为您分析内存转储并突出显示它找到的任何问题。

You can find more details here: http://azure.microsoft.com/blog/2014/07/08/daas/ 您可以在此处找到更多详细信息: http//azure.microsoft.com/blog/2014/07/08/daas/

Azure recently launched the ServiceProfile. Azure最近推出了ServiceProfile。 This tool should help you determine memory usages on intensive processes. 此工具可帮助您确定密集型流程的内存使用情况。 https://serviceprofiler.azurewebsites.net/ https://serviceprofiler.azurewebsites.net/

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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