相同的应用程序池,但有多个项目和大型.dll

本文关键字:项目 dll 大型 应用 应用程序 程序池 | 更新日期: 2023-09-27 18:26:48

我试着在这里搜索,但找不到问题的答案(如果我错过了,我很抱歉)。

让我来搭建舞台。我有一个解决方案,有两个站点和两个类库

  • (类库)CommonFoo
  • (ClassLibrary)SiteFooLib(已引用CommonFoo)
  • (Site)SiteFoo(已参考CommonFoo和SiteFooLib)
  • (站点)AdminFoo(已引用CommonFoo)

这些站点使用自己的应用程序池(我们称之为SiteFooPool和AdminFooPool)。

我还使用了一个外部库EO.Pdf(EssentialObjects Pdf)来生成Pdf文件,该库目前仅在SiteFoo中引用。但在未来,AdminFoo可能也需要它

我的问题是,如果我将EO.Pdf移到CommonFoo,SiteFooPool会在内存中增长吗?或者,即使SiteFooLib也引用CommonFoo,因为它仍然在同一个应用程序池中,所以它会保持不变吗?

我知道AdminFooPool会在内存中增长。

谢谢,塞克。

相同的应用程序池,但有多个项目和大型.dll

仅引用外部DLL本身不会导致应用程序池在内存中不断增长。应用程序池的内存增长取决于您对新站点中的外部DLL所做的操作。如果新站点正在使用该DLL执行大量操作,则确保其应用程序池大小将按这些操作消耗的内存的比例增长。