提高网站性能 - ASP.NET

时间:2016-06-01 16:18:45

标签: c# asp.net asp.net-mvc-5

我正在.NET网站上工作并试图加快加载时间。我的问题是,即使对于主页(不加载任何对象数据),加载主页也需要花费大量时间。我已经把记录器放在各处,以找出导致问题的原因,这是我到目前为止所做的:

2016-06-01 12:10:04,217 [5] INFO  - BaseController/SetPrincipal(): Started - 01/06/2016 12:10:04 PM
2016-06-01 12:10:04,235 [5] INFO  - SetPrincipal->PrincipalContextManager(): Started - 01/06/2016 12:10:04 PM
2016-06-01 12:10:04,839 [5] INFO  - PrincipalContextManager() finished: 00:00:00.6040604

2016-06-01 12:10:04,990 [5] INFO  - SetPrincipal->DILAuthorizationContext(): Started - 01/06/2016 12:10:04 PM
2016-06-01 12:10:06,657 [5] INFO  - DILAuthorizationContext() finished: 00:00:01.6661666

2016-06-01 12:10:06,659 [5] INFO  - GetRoles->PrincipalContextManager(): Started - 01/06/2016 12:10:06 PM
2016-06-01 12:10:06,822 [5] INFO  - PrincipalContextManager() finished: 00:00:00.1630163

2016-06-01 12:10:06,954 [5] INFO  - BaseController/SetPrincipal() finished: 00:00:02.8402840

2016-06-01 12:10:07,026 [5] INFO  - HomePageController/Index: Started - 01/06/2016 12:10:07 PM
2016-06-01 12:10:07,091 [5] INFO  - HomePageController/Index finished: 00:00:00.0650065

2016-06-01 12:10:08,312 [5] INFO  - Loading Layout Start: 01/06/2016 12:10:08 PM
2016-06-01 12:10:08,314 [5] INFO  - Loading Layout Finish: 01/06/2016 12:10:08 PM
2016-06-01 12:10:08,711 [5] INFO  - Requesting JS bundles: 01/06/2016 12:10:08 PM
2016-06-01 12:10:09,482 [5] INFO  - Requesting JS bundles: 01/06/2016 12:10:09 PM

2016-06-01 12:10:09,658 [5] INFO  - Layout CanView Users Started: 01/06/2016 12:10:09 PM
2016-06-01 12:10:09,770 [5] INFO  - Layout CanView Users Finished: 01/06/2016 12:10:09 PM

我知道我必须使用min文件作为捆绑包并调整SetPrincipal方法以加快速度。但我的问题是,在索引调用View()来显示布局后,加载布局大约需要1.5秒。我怎么能找出导致这种延迟的最新情况?任何帮助都很感激!谢谢:))

更新:我想我会将我们的解决方案作为答案,因为这是迄今为止推荐的唯一解决方案,但如果你们能推荐其他任何东西我真的很感激

1 个答案:

答案 0 :(得分:3)

配置代码。热门代码很明显。

或者,在加载下暂停调试器10次以查看它停止的位置。这是耗费大部分时间的代码。

顺便说一句,这种技术被称为穷人的探查者。我经常喜欢它到实际的探查器,因为我可以检查调试器中的应用程序状态。专业提示:运行并行加载并使用并行堆栈窗口。这样你就得到了一个以树形呈现的N个线程样本!