【发布时间】:2021-05-23 05:36:36
【问题描述】:
我的 Azure Function 应用程序在新的服务总线消息队列上触发。我的前几条消息已成功处理,但一段时间后我开始收到以下错误: " Microsoft.Azure.ServiceBus:提供的锁无效。锁已过期,或者消息已从队列中删除。"
这是什么原因,我该如何解决??
Host.Json 文件:
{
"functionTimeout": "05:05:00",
"logging": {
"applicationInsights": {
"samplingSettings": {
"isEnabled": true,
"excludedTypes": "Request"
}
}
},
"version": "2.0",
"extensions": {
"serviceBus": {
"prefetchCount": 100,
"messageHandlerOptions": {
"autoComplete": true,
"maxConcurrentCalls": 32,
"maxAutoRenewDuration": "05:00:00"
}
}
}
}
【问题讨论】:
-
函数应用配置的预取和最大函数持续时间是多少?
-
最大功能持续时间??我在哪里配置?
-
函数执行的最长时间,这就是我的意思。
-
在 ASB 端 - 队列上的锁定持续时间。通常,持续时间太短会导致消息锁丢失,从而导致错误。
-
我将函数“functionTimeout”属性配置为 5 小时,但仍然出现锁定错误。 ASB的锁定时长在哪里配置??