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

时间:2014-10-17 08:28:25

标签: c# asp.net .net optimization

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

让我踏上舞台。我有一个包含两个站点和两个类库的解决方案

  • (ClassLibrary)CommonFoo
  • (ClassLibrary)SiteFooLib(已参考CommonFoo)
  • (Site)SiteFoo(已参考CommonFoo和SiteFooLib)
  • (站点)AdminFoo(已参考CommonFoo)

网站正在使用自己的应用程序池(我们称之为SiteFooPool和AdminFooPool)。

我还使用外部库,EO.Pdf(EssentialObjects PDF),目前仅在SiteFoo中引用,用于生成PDF文件。但是将来AdminFoo可能也需要它。

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

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

谢谢,Seke。

1 个答案:

答案 0 :(得分:0)

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