Azure网站具有相同DLL的多个网站的内存使用情况

Gra*_*ler 7 iis dll azure multi-tenant azure-web-sites

我们正在将一系列云服务Web角色移至Azure网站 - 目前正在App Service计划/定价层 - 标准1媒体上运行.

这些网站都是完全相同的,在某些时候我们会重新编写代码库,以便进行适当的多租户.但是,我们目前在单个Azure Web托管计划中将它们作为多个网站托管.

在内存使用方面,Azure将共享相同的Dll,例如所有Nuget软件包/核心应用程序Dll?或者我们是否需要足够的内存来加载每个网站的每个Dll的副本?实际上我希望与大家分享您可以在AppPools上共享通用程序集.

我已经看到了MS添加到IIS的设置,以支持共享主机提供商更好的密度.我相信.Net 4.5增加了对实习Dll的支持.是否有任何设置等影响Azure处理这种情况的方式?我们目前运行的内存消耗为我们3.5GB的94%,并希望了解我们是否需要尽快扩展.我希望Azure能够在掩护下做一些事情,因为MS显然希望最大化密度.

Byr*_*dif 2

每个 Web 应用程序都由应用程序池隔离,因此如果您有同一站点的多个副本,即使它们相同,它们也会将自己的程序集副本加载到内存中。

由于服务的多租户性质,还有安全沙箱,因此实习不会对此产生影响。

要监控内存使用情况,您可以查看应用程序服务计划。流程资源管理器也很有用(WebApp>工具>流程资源管理器)