【发布时间】:2017-07-05 20:00:01
【问题描述】:
我们注意到,自从我们迁移到 azure Web 应用程序后,我们的 asp.net mvc 应用程序的性能受到了巨大影响。我们注意到的一件事是,当一个操作在几个小时内第一次加载时,请求时间会显着减慢。我们的应用程序使用不多,所以有很多空闲时间。我举几个例子(请注意这些只是后端请求响应时间,不包括dom、js、image等加载时间):
- 用户仪表板 - 第一次请求大约需要 20 秒。后续加载大约需要 1 秒
- 正在加载一些对象 - 第一次请求大约需要 7 秒。刷新会让你大约 2 秒。在第一次点击该操作后,使用相同操作加载其他对象也更快
我意识到某些加速可能是由于查询缓存,但我想知道是否仅此而已。我使用的是标准计划并且确实启用了“始终开启”,所以我知道这不是问题所在。这似乎是每个动作都发生的。因此,即使用户已经访问过 action1,现在第一次访问 action2,他们仍然会遇到缓慢的情况。
我可以在这里寻找什么来解决?是否有任何 azure 特定设置?
【问题讨论】:
-
您的应用是否会调用其他可能不是“始终开启”的服务?
-
不,这是一个完全托管的网络应用程序。
-
您可以测量单个事物在应用程序中花费的时间,以确定需要这么长时间。它可以是数据库连接、查询,也可以是视图编译/渲染。没有指标就很难说。
标签: c# azure asp.net-mvc-4 azure-sql-database azure-web-app-service