我有一个 ASP.NET 应用程序在具有多个应用程序域的 IIS 7 上运行,我无法理解为什么单个进程中有多个应用程序域。我已经掌握了我的代码库,并且没有明确地创建第二个应用程序域。回收是否有可能超时?
- 这些双域将持续一段时间。
- 如果由于 Web 配置或二进制更改而发生回收,则两个应用程序域都将关闭,并且将启动两个新的应用程序域。
- 这些服务器每天都会受到多个二进制补丁和 IISReset 的影响——有时有 2 个域,有时只有 1 个。
- 网络园艺已禁用。
- 我发现这一点是因为应用程序中有一个计时器向数据库发送心跳,并注意到有一天服务器有两次心跳。
在 windbg 中,!dumpdomain 向我显示以下结果:(过滤为仅显示应用程序域的名称):
Line 59: Name: None
Line 66: Name: None
Line 372: Name: DefaultDomain
Line 460: Name: /LM/W3SVC/1/ROOT/MyAppDomain-1-129882892717131250
Line 4437: Name: /LM/W3SVC/1/ROOT/MyAppDomain-4-129285605131450579