api - 唤醒时 Azure 应用服务的瓶颈
问题描述
我使用 .NET Core、Swagger、MySQL 和 Azure App Services 开发了一个 API。
当我早上第一次“唤醒”应用程序时,有时需要 43000 毫秒才能得到响应!随后的每个调用都在 500 毫秒和 2500 毫秒之间,这是非常合理的。
我的堆栈中哪一部分花费的时间最长?应用服务、MySql 数据库还是 API 代码本身?如何在 Azure 中对此进行诊断以确定速度和瓶颈?
解决方案
正如大卫所说,您可以从设置中启用“始终开启”:
https://docs.microsoft.com/en-us/azure/app-service/web-sites-configure
另一件事,您可以尝试远程分析您的应用程序。它将帮助您了解瓶颈是什么。
https://azure.microsoft.com/nl-nl/blog/remote-profiling-support-in-azure-app-service/
PS 另外我相信 500ms/2500ms 对于 API 来说仍然太多了。我不知道你的服务是做什么的
推荐阅读
- ruby-on-rails - 命名空间 rails belongs_to
- c# - Xceed CheckComboBox 未正确显示 XAML 中硬编码的项目中的选定值
- mysql - 如何从 sql 文件运行 typeorm mysql 命令?
- java - 查找列表中超过常数值的最大项目
- java - 在没有 maven 或 gradle 的情况下安装框架
- pandas - df.groupby('columns').apply(''.join()),将所有单元格连接成一个字符串
- ruby-on-rails - Ubuntu 18.04 服务器(Rails 6.0)上的“生产”环境缺少“secret_key_base”,尝试了多个主题
- javascript - 了解返回匿名函数时传递的上下文和参数?
- chart.js - 组合条形图图表线被条形遮挡
- r - 删除地图后的列