【问题标题】:What is normal Azure WaIISHost.exe Memory Usage?什么是正常的 Azure WaIISHost.exe 内存使用情况?
【发布时间】:2014-02-08 05:06:00
【问题描述】:

我最近为我们的 Azure Web 角色安装了 NewRelic 服务器监控。角色是一个小实例。我们在 OSv4 (Win 2012 R2) 上使用 2.2 Service Runtime。

查看内存使用情况,我注意到 WallSHost.exe(据我所知与 Azure 相关)它通过 NewRelic 报告消耗了 219Mb(从 250Mb 的峰值下降)。有这么多内存吗?我可以减少它吗?似乎有很多事情要做。

CPU 使用率似乎不定期地飙升至大约 4%。但是 CPU 并不是真正的问题,因为我的实例很少超过 50%

【问题讨论】:

  • 我的机器上 CPU 消耗从不高于 1%,如果你降低 cpu 优先级仍然可以流畅运行?是的,它与天蓝色有关
  • 您使用的实例大小是多少?
  • 标准 A3 微软(win12 r2 7gb 4 核)
  • 好吧,这种机器的 1% 与小型实例的 4% 相似。内存使用情况如何?
  • 内存使用量约为 150MB

标签: azure azure-web-roles newrelic


【解决方案1】:

首先,你为什么关心一个进程占用了多少内存?所有这些内存都将被分页到磁盘,并且假设它没有定期被分页,那么它所做的只是占用通常无关紧要的页面文件大小。

WaIISHost 进程运行您的角色入口点代码(OnStart、Run、StatusCheck、Changing 等),通常在 WebRole.cs 中实现。如果您想减少此进程的内存大小,则可以减少角色入口点代码加载的内存量。

有关 WaIISHost.exe 进程及其作用的更多信息,请参阅http://blogs.msdn.com/b/kwill/archive/2011/05/05/windows-azure-role-architecture.aspx

【讨论】:

  • 看到我没想到会使用 50% 的 IIS 时感到很惊讶。 Mu 角色有 80% 的内存使用率,因此不是主要问题。知道什么会导致它在进入时加载很多吗?知道整个 Azure 进程的平均内存消耗吗?
  • 我没有平均数字,但部署一个全新的 webrole 并查看应该很容易。
  • 假设您没有在角色入口点代码中加载大量数据,那么下一个最有可能使用的内存将是加载模块。但就像我上面提到的那样,这种内存使用几乎是无关紧要的,因为它将全部被分页到磁盘。
猜你喜欢
  • 1970-01-01
  • 2011-05-30
  • 2021-12-29
  • 2018-02-19
  • 1970-01-01
  • 2019-02-24
  • 2021-05-30
  • 2018-05-03
  • 2021-10-21
相关资源
最近更新 更多