1

我注意到随着我的网站变得越来越大,我的笔记本电脑显示我的页面所花费的时间比说一个引用最少的新项目要长得多。

我认为有两个变量会影响 ASP.NET 的预热时间:

  • 外部参考的数量
  • new()工作进程为每个工作进程启动每个实例所需的时间
  • WCF 对象的额外时间,因为 ServiceHost 可能位于外部 DLL 中

首先,在考虑 ASP.NET 启动时间时,这些变量是否正确?

接下来,web.config 似乎可以调度其他对象以用于某些文件类型(*.svc、*.aspx、Windows Identity Foundation (WIF) 等)。这也可能导致 ASP.NET 延迟。

最后,我的项目被创建为“网络项目”而不是“网站”。不确定这是否有影响。

我的理论是否充满漏洞,或者我可以做些什么来使旧笔记本电脑的开发变得更好?

4

1 回答 1

1

工作进程将根据需要将任何引用加载到 AppDomain 中。这意味着当应用程序第一次启动时,并非所有引用的程序集都可能被加载。如果您发现很多引导时间(初始应用程序启动时间)正在增加,我会考虑查看您在Application_Start方法中所做的确切操作等。要记住的另一件事是,这个初始启动时间是本质上是一次性的,它只会在每次应用程序启动时发生(不要忘记当你的应用程序池也被回收时)。因为它是一次性的,启动时间重要吗?一旦网站获得了初始页面视图,从那时起执行应该非常迅速。

您可以运行诸如 ANTS Profiler 或 dotTrace 之类的东西,并准确分析所有时间花费的位置,然后根据该信息决定您希望进行哪些性能改进。

于 2010-08-06T13:57:48.530 回答