如何在 Azure 函数中使用服务总线触发器自动续订消息超时 C#



ServiceBusTrigger与 Azure 函数一起使用以触发函数以对服务总线队列中的新消息执行时,它们似乎不是自动续订消息超时的方法。当然,您始终可以调用 BrokeredMessage.RenewLock 方法,但使用 Functions 时,似乎无法将其配置为自动续订消息锁。

是否有人发现可以将 Azure 函数配置为在处理服务总线队列消息时自动续订中转消息锁?

是的,我知道您可以增加服务总线队列的默认超时,但最大可配置的默认超时为 5 分钟; 这仍然可能太短。

谢谢!

下面是在生成 Azure 函数时使用 ServiceBusTrigger 属性的示例,如使用 Visual Studio 所述。请注意,ServiceBusTrigger使用不允许设置超时持续时间,也不允许配置自动续订。

[FunctionName("MyFunction1")]
public static async Task Run(
    [ServiceBusTrigger("queuename", AccessRights.Listen, Connection = "AzureServiceBus")] BrokeredMessage sbCommand,
    ILogger log)
{
    // process message here
}

该函数自行更新消息锁。您无需手动更新锁,它由函数的运行时处理。请参阅此文章。

最新更新