我有一个 ASP.NET MVC 应用程序,它大量使用 javascript 和 JQuery 来实现管理功能和面向客户的功能。最近,我重新组织了管理屏幕,以便能够更清晰地适应一些新功能的管理控制。
我使用 IE 和 Chrome 进行了测试,发现其中一个较繁忙的页面出现了轻微但可以接受的挂起现象。然而,使用管理页面的主要用户使用 Firefox,并不断报告 Not Acceptable 挂起情况。最后查了一下,发现在Chrome和IE中挂2-3秒的东西在Firefox中挂了10-12秒,这可不行。
不知道该转向哪里,我最终安装了 Glimpse 并对其进行了配置并运行得很好,但我仍然无法弄清楚如何深入研究它以找出页面的哪个区域造成了问题。到目前为止我所能告诉的是,这肯定与客户端(Firefox)的渲染方式有关。需要明确的是,这种情况发生在所有浏览器上,但由于某种原因,这种情况在 Firefox 中更为明显。
有人可以给我一些关于如何开始诊断问题的指示吗?我并不认同使用 Glimpse 的想法,但据我所知,它似乎是一个相当不错的工具。
感谢您的帮助。
最佳答案
根据您的描述,问题似乎出在客户端。话虽如此,Glimpse 可能不如使用 Firefox 自己的分析器那么适合。
SHIFT+F5 将调出 Web 开发人员性能屏幕。从那里,您可以开始/结束性能分析,并更深入地了解可能需要比预期更长的时间。
还可能值得查看网络选项卡并确保资源及时加载。
还要记住,加载项可能会导致延迟。如果最终用户具有执行页面后处理的设置(例如 Greasemonkey 脚本或(回想一下早期的加载项)用于将页面上的电话号码转换为直拨链接的 Skype 插件),这也会在表演中发挥作用。排除这些问题的一个好方法是在启动 Firefox 时按住 SHIFT(实际上是在 Safe Mode 中运行它),这将确定是 Firefox 本身还是某个加载项有问题。
关于javascript - 如何使用 Glimpse 找出导致 ASP.NET MVC 应用程序挂起的原因?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30601693/