Azure functions 在消费计划下的Azure函数中使用ServiceBustigger时会有延迟吗?

Azure functions 在消费计划下的Azure函数中使用ServiceBustigger时会有延迟吗?,azure-functions,azureservicebus,Azure Functions,Azureservicebus,我计划在Azure函数中使用。我知道在消费计划下,函数可能会在一段时间后由于不活动而停止运行 我们在大约20分钟的不活动后释放资源 你的下一个电话是冷启动 假设我的函数应用程序由于不活动而停止。我知道HTTPTrigger会唤醒我的应用程序。由于冷启动,它会变慢,但至少延迟与冷启动一样长(假设轻量初始化为几秒钟) 问题 一旦某个应用被释放,ServiceBustrigers是如何处理的?如果出现新消息,是否会立即触发该功能?冷启动惩罚是可以的,但它能在几十分钟内更像吗?关于blob触发器的这一点

我计划在Azure函数中使用。我知道在消费计划下,函数可能会在一段时间后由于不活动而停止运行

我们在大约20分钟的不活动后释放资源 你的下一个电话是冷启动

假设我的函数应用程序由于不活动而停止。我知道HTTPTrigger会唤醒我的应用程序。由于冷启动,它会变慢,但至少延迟与冷启动一样长(假设轻量初始化为几秒钟)

问题

  • 一旦某个应用被释放,ServiceBustrigers是如何处理的?如果出现新消息,是否会立即触发该功能?冷启动惩罚是可以的,但它能在几十分钟内更像吗?关于blob触发器的这一点表明它可能需要10分钟,但我不确定它是否也适用于服务总线

    如果您的功能应用程序在消费计划中,则最多可能有 如果功能应用程序已消失,则处理新BLOB时延迟10分钟 闲散的

  • 假设在数十分钟内可能会出现延迟,那么使用“始终在线”的高级计划或应用程序服务计划是否可以减少延迟

  • 您指的是两个单独的触发器:servicebus和blob。Blob触发器很慢,但肯定不是几十分钟。Servicebus触发器非常快
  • 是的,你可以通过应用服务计划来减少你的冷启动,但我没有看到任何迹象表明你会从中受益。你可以省下一两秒钟
    您似乎正在经历延迟,无法确定根本原因。触发器很快

    谢谢。关于#1,这是否意味着即使函数应用程序实例由于不活动而被解除分配,仍然有一些东西在侦听服务总线消息?我引入blob注释来描述这样一个事实,即blob触发器在应用程序启动和运行时也很快,但在它被释放后就不会了。我想知道服务巴士是否也会这样。可能我应该测试一下:)触发blob的延迟是因为存储帐户的日志(在容器中列出当前blob)是按时间间隔更新的,当您使用blob触发器时,它实际上是从正在更新的日志中触发的,不是直接从实际的blob开始的,我知道http触发器的冷启动,但是,我不确定servicebus触发器是否有任何延迟,我对此进行了测试。正如你提到的,没有长时间的耽搁。我看到了大约30秒的延迟,我认为这可能是由于冷启动造成的,尽管对于一个没有初始化的示例应用程序来说它仍然有点太长(它实际上是servicebus触发器的azure函数示例应用程序)。另一方面,具有存储队列触发器的应用程序实际上具有更快的冷启动速度。约5秒冷启动。请注意,在预热期间,服务总线触发器比存储队列快(1秒比几秒)。