【问题标题】:Use Azure webjobs and queue storage to execute at a given time使用 Azure webjobs 和队列存储在给定时间执行
【发布时间】:2016-02-08 14:58:42
【问题描述】:

我的目标是将消息推送到 Azure 队列,并让 webjob 在给定时间处理它。例如。 { message : "记住牛奶", time: 2016-02-10-10:10:00}

我可以通过将消息出列、检查时间戳并在时间未到时将其放回队列来天真地做到这一点。

在 Azure 世界中是否有更惯用的方式来执行此操作?

【问题讨论】:

  • 要补充彼得的回答,请记住最大 initialVisibilityDelay 为 7 天。

标签: azure azure-webjobs azure-storage-queues


【解决方案1】:

你可以设置initialVisibilityDelay:

[DoesServiceRequestAttribute]
public void AddMessage(
    CloudQueueMessage message,
    Nullable<TimeSpan> timeToLive = null,
    Nullable<TimeSpan> initialVisibilityDelay = null,
    QueueRequestOptions options = null,
    OperationContext operationContext = null
)

延迟超时时会显示该消息:

初始可见性延迟 类型:System.Nullable 一个 TimeSpan 指定从现在起消息将不可见的时间间隔。如果为 null,则消息将立即可见。

MSDN:microsoft.windowsazure.storage.queue.cloudqueue.addmessage

【讨论】:

    猜你喜欢
    • 2020-05-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-06
    • 2021-05-06
    • 2020-11-07
    相关资源
    最近更新 更多