我最近在我们的Azure Web角色中安装了NewRelic服务器监控。角色是一个小实例。我们使用2.2服务运行时在OSv4(Win 2012 R2)上。
查看内存使用情况我注意到WallSHost.exe(据我所知是Azure相关的)它通过NewRelic报告消耗了219Mb(从250Mb的峰值下降)。它有很多记忆吗?我能减少吗?看起来好像很多。
CPU的使用量似乎不定期地飙升至4%左右。然而,CPU并不是真正的问题,因为我的实例很少超过50%
答案 0 :(得分: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。