加速Web应用程序编译

时间:2011-01-19 22:18:25

标签: asp.net vb.net performance pageload load-time

我曾尝试查看“相关”问题以获得答案,但它们似乎并没有真正相关......

基本上我有一个VB.Net应用程序,其中包含目录,管理部分(可以更改目录,监视页面视图等)以及客户前端的其他基本页面。

当我在本地计算机上编译并运行应用程序时,它似乎可以很快地编译并运行得非常快。然而,当部署在服务器上时,它似乎需要在第一页加载时永远和一天(无论它是什么页面,有多少样式表/ JS文件,有多少图像,页面标记有多大,以及等等)。在此之后所有页面加载速度非常快。我的猜测是因为必须从头开始加载代码;之后,直到它被回收,应用程序运行得非常快。有谁知道如何加速应用程序的这一部分?我担心一些客户(如我自己的慢速连接速度低于拨号速度)可能会因为加载速度不够快而离开网站。任何帮助将不胜感激。

提前致谢。

此致

理查德

PS如果您参考我的其他一些问题,您会发现有关系统的更多信息,例如大多数数据在第一页加载时被加载到对象中这一事实 - 我正在慢慢排序但是它似乎并没有带来太大的不同。我考虑过使用Linq-to-SQL,但据我所知,这并没有给我太多的灵活性。我宁愿定义自己的系统架构并使其专门针对公司,而不是在Linq-to-SQL的限制范围内工作。

1 个答案:

答案 0 :(得分:0)

如果可以,最快捷的解决方案就是将AppDomain配置为在一段时间不活动后不再回收。如何实现这一点在IIS 6和IIS 7。

另一种选择是编写一个小型实用程序,每隔4分钟从您的站点请求一个页面,并将其设置为另一台始终处于打开状态的PC上的计划任务。这至少会阻止超时和随之而来的AppDomain回收发生。当然,这是一个黑客攻击,但有时任何解决方案都比没有解决方案更好。

然而,正确的解决方案是precompile your views。如何完成和部署将取决于您的网站的Visual Studio项目的确切类型。