Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 毒药队列的过期日期_C#_Azure Storage Queues - Fatal编程技术网

C# 毒药队列的过期日期

C# 毒药队列的过期日期,c#,azure-storage-queues,C#,Azure Storage Queues,如何将azure存储队列中的毒药队列消息过期日期期限更改为最大值,以及 当前默认过期时间为7天。AFAIK,Azure队列消息允许的最长过期时间为7天,这也是默认值 毒药队列也是名为{original queue name}-poison的正常队列。例如,如果Azure Webjobs SDK处理的队列消息超过了最大尝试次数,则相关消息将移动到有毒队列,此过程由SDK处理 根据我的理解,您需要显式地处理毒药消息,而不是将消息永久存储到毒药队列中。你可以关注细节。此外,您还可以选择其他消息队列服务

如何将azure存储队列中的毒药队列消息过期日期期限更改为最大值,以及
当前默认过期时间为7天。

AFAIK,Azure队列消息允许的最长过期时间为7天,这也是默认值

毒药队列也是名为
{original queue name}-poison
的正常队列。例如,如果Azure Webjobs SDK处理的队列消息超过了最大尝试次数,则相关消息将移动到有毒队列,此过程由SDK处理

根据我的理解,您需要显式地处理毒药消息,而不是将消息永久存储到毒药队列中。你可以关注细节。此外,您还可以选择其他消息队列服务来满足您的需求


更新:

关于9.0.0中的更改:

队列:增加了对队列消息上无限TTL的支持

添加队列消息时,可以指定
timeToLive
参数,如下所示:

queue.AddMessage(new CloudQueueMessage($"hello world-{DateTime.UtcNow}"),timeToLive:TimeSpan.MaxValue);
根据您的需求,您可以使用手动毒药消息处理方法来检查
dequeueCount
,并以编程方式将当前队列消息显式添加到毒药队列中

注意:队列消息发送到中毒队列之前的最大重试次数默认为5次,您可以通过
config.Queues.MaxDequeueCount
对其进行更改

或者,您只需利用自动毒药消息处理,然后就可以触发相关的毒药队列,并使用无限TTL将队列消息添加到自定义毒药队列中