【发布时间】:2011-01-19 22:18:24
【问题描述】:
我已尝试查看“相关”问题的答案,但它们似乎实际上并不相关......
基本上,我有一个 VB.Net 应用程序,其中包含目录、管理部分(可以更改目录、监控页面视图等)以及客户前端的其他基本页面。
当我在本地机器上编译和运行应用程序时,它似乎编译得相当快并且运行得非常快。然而,当部署在服务器上时,第一个页面加载似乎需要永远和一天的时间(无论它是什么页面,有多少样式表 / JS 文件,有多少图像,页面标记有多大,以及很快)。在此之后,所有页面的加载速度都非常快。我的猜测是这是由于必须从头开始加载代码;在那之后,直到它被回收,应用程序运行得非常快。有谁知道如何加快应用程序的这一部分?我担心一些客户(在慢速连接上,例如我自己的连接速度低于拨号速度)可能会因为加载速度不够快而离开网站而永远不会返回。任何帮助将不胜感激。
提前致谢。
问候,
理查德
PS 如果您参考我的其他一些问题,您会发现更多关于系统的信息,例如大多数数据在第一页加载时加载到对象中 - 我正在慢慢整理,但是它似乎并没有太大的不同。我曾考虑过使用 Linq-to-SQL,但据我所知,这并没有给我太多的灵活性。我宁愿定义自己的系统架构并使其特定于公司,而不是在 Linq-to-SQL 的限制内工作。
【问题讨论】:
-
它是 Web 应用程序还是网站?是预编译的吗? “永远和一天”到底有多长?
-
这是一个 Web 应用程序,在 Visual Web Developer 中设置。我总是先编译我的应用程序,然后再将它们发送到实时或测试环境。永远和一天的范围从大约 5 秒到 10 或 15 秒。它似乎变化很大。我的意思是它很容易受到一天中的时间的影响,如果在同一台服务器上有一些高流量的网站,但它似乎在一天中的任何时候都不是特别快。
-
我的问题是,为什么在发布更新后,您不是第一个查看页面并为您的客户“咬紧牙关”的用户?
-
我觉得这里肯定有误会。应用程序在大约 5 分钟左右不活动后被回收(这是服务器上的默认设置 - 我无法控制)。在此之后的第一个页面视图很慢。在此之后的任何页面浏览,在前一个页面浏览的 5 分钟内,都非常快。在live.heritageartpapers.com 上查看 - 加载一个页面,等待半小时然后再次加载。然后尝试加载不同的页面。你应该会发现和我一样的结果。
-
请准确告诉我们您的站点是什么类型的 Visual Studio 项目。 MVC、网站、Web 应用程序?
标签: asp.net vb.net performance pageload load-time