c# - Azure 应用服务:收到 2 个暂时性错误后,响应峰值持续 5-10 分钟
问题描述
我有 Azure 应用服务,可用作我的颤振应用程序的 WEB API。总体响应时间还可以,但在服务收到一些短暂的(通常超过 1 个)错误后,它几乎停止工作约 5-10 分钟。瞬态错误之后通常是任务取消错误和下划线提供程序无法打开。
如何避免瞬态错误?如何在瞬态错误后恢复?将我的服务转移到 AWS 上会更好吗?
我有 App Service S1 Code first Database S0
在屏幕上你可以看到响应时间,每个尖峰都是由瞬态错误造成的。
在这里你可以看到错误
服务请求
DTU 使用
解决方案
我解决了问题!问题与高 RAM 使用率有关。
我做了什么:
- 在 Web 配置中将 Debug 设置为 false
- 确保 DbContext 在控制器方法之后处理
- 制作私有静态 HttpClient,在整个 api 中只使用一个 HttpClient 实例
- 对数据库进行多次往返的优化方法,以对数据库进行单次调用
现在我的响应时间不到 1 秒。
推荐阅读
- angular - valueChanges 尝试抛出对象为空的错误(反应形式)
- php - 通过门户网站上传大文件
- javascript - 如何计算模型中的嵌套元素?
- java - 用java创建一个新变量
- python - 编写一个程序,将随机创建的 100 个随机整数写入文件。Python 文件输入/输出
- mysql - 如何在 SQL/SQLalchemy 中对多条记录使用 join 和 order_by?
- c++ - 如何将 int 参数放入 C++ 中的 Sigleton 构造函数中
- javascript - 创建一个独特的 HTML 表单
- javascript - for 循环变量的变化比 setInterval 中的 css 变化更快
- python - pymongo 我应该如何指定数据路径?