Azure 免费订阅上消费托管函数的性能

Performance of Consumption-hosted Functions on Azure free subscriptions

我正在使用 Azure 免费试用订阅评估 Azure Functions。 除了 performance/scalability.

之外一切正常

我开发了简单的 http 触发函数(C# Class 库),它只休眠 5 秒。 直接执行一次,5s就可以了,完全符合预期。 但是当并行调用 500 次时 - 执行时间会增加到 20-30 秒。

函数 "hosted" 在消耗计划上,所以我预计一旦需要,它就会在单独的 VM "automatically" 上执行。 我检查了 ARR Cookies(这可能使我的请求停留在一个虚拟机上)——不,不 饼干。 一切看起来都很好,至少对于这种简单的情况(没有明显的瓶颈要检查 - 没有数据库,没有通信等)。

所以,问题是 - 是因为免费试用订阅,还是我遗漏了什么?

免费试用订阅的 Azure Functions 没有区别。你不会因此而放慢速度。

正如@mathewc 所指出的,这是由于 HTTP 横向扩展有一些延迟,我们正在努力改进。您可以在此处看到一些可以控制的旋钮:https://github.com/Azure/azure-webjobs-sdk-script/wiki/Http-Functions#throttling

如果启用节流,将导致 429 秒,但有助于防止执行时间增加。