Azure存储队列消息(在特定时间显示)

use*_*430 8 azure-storage azure-storage-queues

如何向Azure队列存储添加消息,该消息将在明天(24小时后)显示在队列中?

小智 24

如果您使用的是Storage Client Library,则可以使用CloudQueue中的addMessage重载,该重载将初始可见性延迟作为输入参数.

具体来说,您必须在2.0中使用以下重载:

AddMessage(CloudQueueMessage message, TimeSpan? timeToLive = null, TimeSpan? initialVisibilityDelay = null, QueueRequestOptions options = null, OperationContext operationContext = null)

如果您使用的是1.7版,则会使用以下重载:

public void AddMessage(CloudQueueMessage message, TimeSpan? timeToLive, TimeSpan? initialVisibilityDelay)

您可以在此处找到有关可见性超时及其工作原理的更多信息.

  • 我们一直在使用这个initialVisibilityDelay属性,但只是"发现"了它的一个限制:你不能将队列消息从当前时间延迟超过7天!这对我们来说是一个破坏者,但如果没有足够的时间过去(如果你需要超过1周),它可能会通过在队列中重新发送另一条消息来解决它 (3认同)
  • @AndrewHill 值得注意的是,只要您使用 2017 年 7 月 29 日之后的 ARM 模板,TTL 最大值就不再是 7 天。https://docs.microsoft.com/en-us/rest/api/storageservices/Put-Message (2认同)