【发布时间】:2020-10-03 19:51:32
【问题描述】:
各位程序员,
我知道这个问题不完全是关于编程的,如果 SO 不适合它,请随时关闭这个问题并指出我正确的论坛。
我开发了一个 .NET Core 3.1 应用,部署在 Azure 应用服务上,但我遇到了性能问题。
该服务由各种文件的 OCR 分析组成,OCR 部分由嵌入到 DLL 中的外部库执行。在我的笔记本电脑上,在本地运行服务时,OCR 部分(一行代码,没有 I/O,没有执行其他操作)需要一到两秒。不过,它占用了大量可用的 CPU。
对于正在处理的完全相同的文件,并监视完全相同的代码行,在 Azure 上在线运行时计算需要 6 到 8 秒,没有其他请求正在处理。该应用程序部署在 Azure Web 应用程序上,S1 生产计划(100 个ACU,大约 60 美元/月)。随着用户数量的增加,整体响应时间也在增加,这会影响整个系统的性能。
在我开始切换计划并花费客户的钱之前,我想确保我不会错过有关如何选择 Web 应用计划的重要内容。
- 首先,在所有其他条件相同的情况下,我是否应该期望 S1 生产 WebApp 在基于 CPU 的作业上比我自己的计算机慢?我的笔记本电脑配备了多核 i7-7700 CPU。这可能取决于许多外部参数,但如果有的话,我想听听一般的经验法则。
- 查看 Web 应用程序的最大 CPU 使用率时,峰值为 50-60%,参见下面的屏幕截图。这是否意味着 CPU 使用率不是此进程的瓶颈,因此我缺少其他内容?
- 对于如何为给定作业确定 Web 应用程序/服务器的维度,您会推荐哪些阅读材料?
感谢您的帮助,
【问题讨论】:
标签: azure performance asp.net-core