Azure功能:功能在App Service计划上的启动滞后时间

时间:2019-10-23 07:51:26

标签: .net azure azure-functions azure-function-app

我们在负载下遇到Azure函数的性能问题,在Azure函数的调用和函数中的代码执行之间存在时间延迟。

“应用程序见解”中Azure函数调用的第一个日志条目显示:

Function started (Id=6e2a7c0e-7190-4f4b-a146-9b957b49f4aa)

此后,从我们代码的第一个日志(我们函数的第一行代码)开始会有几秒钟的随机延迟。

我们只看到这种负载延迟。

Function App在具有高级定价层的App Service计划下运行。这些功能都是HTTP触发器。

有什么想法可能会发生这种情况以及“功能已启动”日志的含义是什么?

2 个答案:

答案 0 :(得分:1)

这是一个常见的“问题”,称为冷启动:

  

冷启动是未启用的功能的延迟增加   最近被打了。

您可以在此处找到有关此内容的完整说明:https://azure.microsoft.com/en-au/blog/understanding-serverless-cold-start/

如果您的企业不接受该计划,则应升级到永久预热实例的高级计划。有关此信息的更多信息,请点击此处:https://docs.microsoft.com/en-us/azure/azure-functions/functions-premium-plan

答案 1 :(得分:0)

就像Thiago所说的那样,这是一个冷酷的开始,如果您发现.NET应用程序的启动时间不好,则应尝试使用Node函数!

要消除此问题,您可以通过转到门户网站App Service上的Configuration-> General Settings来将“ Always On”设置为“ On”。您的App Service Plan中需要一个Basic或更高的层,看起来您已经拥有了。