Azure中的平均内存工作集和内存工作集

Azure中的平均内存工作集和内存工作集,azure,memory,azure-web-app-service,Azure,Memory,Azure Web App Service,我在Azure中有一个应用程序服务。它显示了两个称为平均内存工作集和内存工作集的指标。现在,内存工作集被定义为进程中线程最近接触的内存页集。门户网站中显示的这两个方面的图表如下所示: 现在,我有三个问题: 如何确定我的服务的最大专用内存是多少?一旦达到极限,会发生什么 Memory Working Set是进程中线程最近接触的内存页数。我认为这意味着,只有当我的代码出现内存泄漏,导致其他页面加载到内存中时,内存工作集才会增加。我的问题是,请求数量等外部因素是否会对内存工作集产生影响,即如果请

我在Azure中有一个应用程序服务。它显示了两个称为
平均内存工作集
内存工作集
的指标。现在,
内存工作集
被定义为进程中线程最近接触的内存页集。门户网站中显示的这两个方面的图表如下所示:

现在,我有三个问题:

  • 如何确定我的服务的最大专用内存是多少?一旦达到极限,会发生什么
  • Memory Working Set是进程中线程最近接触的内存页数。我认为这意味着,只有当我的代码出现内存泄漏,导致其他页面加载到内存中时,内存工作集才会增加。我的问题是,请求数量等外部因素是否会对内存工作集产生影响,即如果请求从200增加到500,内存工作集会增加吗?若有,原因为何

  • 如何计算平均内存工作集?它是经过时间计算的吗?查看图表,我发现平均内存工作集和内存工作集的值几乎相似


  • 让我尽可能多地回答:

    1.a要知道专用最大内存,您应该检查进程的“专用工作集”。我想您可以在TaskManager中或在KUDU(Azure)的帮助下找到这些信息。用谷歌搜索一下,你会很容易找到的

    1.b一旦达到限制,进程将访问共享工作集

    2.内存工作集是“应用程序在MiBs中使用的当前内存量”

    2.b如果请求增加了您所引用的2.5倍,那么内存工作集很可能会随着新对象的创建而增加,前提是可以分配可共享的物理内存


    3.平均工作内存集是“应用程序使用的MIB中的平均内存量”

    这与垃圾收集不同吗?因为我们需要对这一点发出警报。