【发布时间】:2012-03-04 01:35:56
【问题描述】:
因此,我的网站已经上线了几个星期,但遇到了一些速度问题。这是一个在 discountasp.net 上使用 MySQL 的 MVC3 站点。
我清理了网站的结构,让它在我的本地机器上运行得非常快,大约 800-1100 毫秒的加载时间,没有缓存。奇怪的是,当我尝试访问实时站点时,我得到大约 15-16 秒的时间,有时冻结长达 30 秒。我在 web.config 中关闭了视图状态,现在本地加载时间为 1.3 秒(是的,奇怪的是更长了一点),而实时站点大部分时间下降到 8-9 秒,但这仍然很差。
如果不针对我的情况提出这个问题(因为可能有一百万个原因网站变慢),我很好奇是否有任何原因导致本地 Visual Studio 服务器或 IIS Express 之间的加载时间运行得如此之快而现场网站运行速度如此之慢。任何代码明智或依赖明智的影响都不会相同吗?我只是想不出一个会影响现场而不是本地的原因。
有什么想法吗?
进一步的想法:我将站点设置为子文件夹,我正在使用 IIS URL 重写映射到子域。我以前没有听说过这会导致问题,但这可能是个问题吗?
进一步更新: 所以我上传了一个简单的页面,它只查询我拥有的最大表中的所有记录,没有缓存。在我的本地机器上,它的平均时间约为 110 毫秒(看起来仍然很慢......),而在实时站点上,它通常是两倍以上的时间。如果我多次访问数据库来加载页面,那么这将严重影响页面加载时间是有道理的。我仍然不确定问题是否与LINQ或MySQL或MVC有关(甚至可能是discountasp.net)。
【问题讨论】:
-
嗯,很明显要问的是你在本地有什么硬件设置,你必须远程玩什么?
-
我的本地机器只是一台小型台式电脑,远程主机是 discountasp.net,我假设它的设置很好。
-
你有不同数量的请求有点奇怪,额外的请求来自什么?哪个请求需要时间?是图像还是超时?
-
这是来自谷歌分析的 _utm.gif。查看 chrome 中的 net 选项卡,虽然它似乎是在服务器端消耗 95% 的加载时间,但一旦服务器的响应被发回,所有其他文件的加载速度非常快。
标签: asp.net-mvc asp.net-mvc-3 performance