azure存储队列消息的实时时间

时间:2013-10-29 12:20:00

标签: azure-storage azure-queues

我是否理解,在Windows Azure Queue存储中,邮件最多可以存活7天?

7天后邮件会怎样?

如果您在7天内阅读过一次并且不删除该消息,该消息会怎样?我的意思是你从队列中读取消息并设置可见性超时让我们说1分钟。阅读完邮件(不删除邮件)并且1分钟超时可见性到期后会发生什么?我知道回来了并且在队列中可用,但是该消息的7天TTL会发生什么情况,是否从该点续订到7天,或者自消息创建以来是7天?

4 个答案:

答案 0 :(得分:4)

是的,你理解正确。来自队列的邮件会在7天内自动删除,并且没有任何名为“重新创建”的邮件。一旦插入队列 storage ,它将被自动删除,你无法恢复它(也没有恢复工具)。

答案 1 :(得分:4)

现在,您可以通过在最初对邮件进行排队时指定-1秒的到期时间来为Azure存储队列邮件选择加入无限TTL。

  

对于Queue服务,Put Message API现在允许messagettl参数中的生存时间值超过七天。您还可以为此参数指定-1,以指示消息应保留在队列中,直到出列并删除。此参数的默认值仍为七天。

https://docs.microsoft.com/en-us/rest/api/storageservices/versioning-for-the-azure-storage-services

答案 2 :(得分:1)

添加消息时,用户指定生存时间(<7天),如果消息仍然存在于队列中,则会自动删除该消息。

也许您需要使用Windows Azure Service Bus Queue。看一下Azure中可用的两个队列之间的比较:

http://msdn.microsoft.com/en-us/library/windowsazure/hh767287.aspx

答案 3 :(得分:0)

是7天是最大的。这里有回收功能请求。你可以去评论

https://feedback.azure.com/forums/217298-storage/suggestions/4134167-infinite-ttl-for-queue-messages