在使用Azure函数处理消息后,是否需要从服务总线队列中删除消息?

时间:2018-07-03 14:11:12

标签: azure azure-functions azureservicebus

Azure的新手,我编写了一个azure函数,当消息到达服务总线队列时会触发该函数。我需要手动删除此消息还是由服务总线处理?

2 个答案:

答案 0 :(得分:3)

否,使用服务总线触发器时,您不必手动删除消息:

  

Functions运行时在PeekLock模式下收到一条消息。如果函数成功完成,它将在消息上调用Complete,如果函数失败,则调用Abandon。如果该函数的运行时间超过PeekLock超时,则只要该函数运行,锁就会自动更新。

来源:Trigger - PeekLock behavior

答案 1 :(得分:0)

可以以窥视锁定模式或接收和删除模式接收Service Bus中的消息。 在窥视锁定模式下接收到该消息时,不会从队列中删除该消息,但是在接收和删除模式下接收到该消息时,则会自动从队列中接收并删除该消息。 因此,删除邮件取决于您执行的接收方式 Azure函数以窥视锁定模式接收消息,因此,如果调用complete(),则消息将从队列中删除