如何诊断Azure中的性能(响应时间)瓶颈?
我在Azure上有一个.NET Core网站,它包含一个Web应用程序服务和一个SQL数据库。
我已经设置了负载测试并通过云部署它来访问网站。负载测试代理的配置属性为
Web应用程序资源分配如下
此图显示了负载测试期间的硬件利用率(显示了2个测试,大约下午1点和下午1点半)
似乎合理,除了我的响应时间在我看来太慢,考虑到硬件根本没有压力。例如,在10个用户中,我的响应时间从20毫秒开始,但在150个用户(在测试结束时),我看到了5秒的响应时间。
对于测试的最后一部分,我的每秒请求大约为50。
我还能做些什么来诊断慢响应时间?如果Web服务器硬件没有挂钩,并且数据库甚至没有打喷嚏,我还可以打开其他什么样的旋钮?
答案 0 :(得分:2)
响应时间长的瓶颈可能是由各种原因造成的,例如带宽限制,源限制,应用程序设计不良,紧耦合组件的依赖性等。有关如何解决慢速Web应用程序性能问题的更多信息,请参阅该文件。该文件中有一些摘录。
为您的网络应用启用诊断日志记录。
WebApp提供诊断功能,用于记录来自Web服务器和Web应用程序的信息。 我们可以为Web服务器诊断启用详细错误记录,失败请求跟踪,Web服务器日志记录
使用Kudu调试控制台(https://。scm.azurewebsites.net/) Kudu为您的应用程序,日志流,诊断转储提供环境设置
我们还可以使用Azure Application Insights来监控应用程序的使用情况和性能,然后我们可以获得有关请求的更多详细信息,更多详细信息异常信息,响应时间等。 如果我们获得有关应用程序异常,请求失败,服务器日志和应用程序日志的更多详细信息,那么对我们进行诊断将更有帮助。
还有一些关于如何诊断Web App以及如何使用应用程序洞察的相关文章:
Enable diagnostics logging for web apps in Azure App Service
Monitor performance in web applications
Diagnose exceptions in your web apps with Application Insights
答案 1 :(得分:0)
尝试使用新的遗物扩展程序 它通过免费帐户提供了对响应时间和更多信息的深刻见解
您还可以在网络应用上启用应用洞察。它将为您提供有关响应时间和其他详细信息的详细信息