Azure 应用服务性能问题

标签 azure azure-application-insights azure-web-app-service

我们在 AppService (S1) 中托管了 ASP.Net Core 2.1 Web API,可与 Azure SQL DB (S1-20DTU) 进行通信。两者都在同一地区。在负载测试期间,我们发现某些 API 实例需要花费太多时间才能返回结果。

我们尝试解决性能问题,以下是我们的观察结果。

  1. API 大多数情况下会在 0.5 秒内响应。
  2. API 方法都是异步方法。
  3. 有时需要大约 50 秒到一分钟多的时间。
  4. CPU 和内存利用率低于 60%
  5. 数据库有 20 个 DTU 容量,其中 6 个 DTU 用于负载测试。
  6. 在下面来自 Application Insights 的示例快照中,我们看到请求的总持续时间为 27.4 秒。但数据库依赖持续时间仅为97ms。在调用数据库之前没有任何事件。请引用下面的例子。

有人可以帮我理解这 27 秒的等待时间内发生了什么吗?这可能是什么原因?

enter image description here

最佳答案

  1. 我建议检查 Application Insights 资源上的应用程序 map ,如下所示,以仔细检查依赖关系。

enter image description here

  • 访问应用服务上的“诊断和解决问题”链接(如下所示)验证 CPU 和内存指标,并运行可用性和性能报告以查明负载测试期间是否存在任何问题。
  • enter image description here

  • 在 API 上使用异步方法以最大限度地提高 CPU 使用率。工作进程线程可能已达到极限,而您的应用程序是瓶颈。当您运行上面第 2 点中提到的报告时,您应该会得到一些见解。
  • 关于Azure 应用服务性能问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61632614/

    相关文章:

    javascript - 在 LUIS 上添加句子

    javascript - 无法从 Azure IOT 中心下载容器中的所有 Blob 并收到错误 : Cannot read property 'on' of undefined

    azure - 缓存管理 Power BI 服务和 Azure Analysis Services 多维数据集

    azure - 通过 MS Graph Explorer 更新 Azure AD 应用程序 appRoles

    elasticsearch - 应用程序洞察力与弹性(ELK)

    wordpress - 在 Azure 中测试/开发 WordPress 网站

    c# - Azure设置内部url的可用性测试

    javascript - 使用 ApplicationInsights 跟踪跨域 session

    reactjs - Azure 上的 React 应用程序中未填充 Process.Env

    azure - 将 *azurewebsites.net 重定向到 .com,但不适用于 CDN