【问题标题】:Azure Batch Job sequential execution not workingAzure Batch Job 顺序执行不起作用
【发布时间】:2018-11-28 15:12:01
【问题描述】:

我们正在使用azure web job进行批处理,当存储队列中有消息时会触发该作业。

我们已将作业配置为一一执行消息。

JobHostConfiguration config = new JobHostConfiguration();
config.Queues.BatchSize = 1;
config.Queues.MaxDequeueCount = 1;

即使作业从存储队列中获取多条消息并并行执行。

请帮忙。

【问题讨论】:

    标签: azure-webjobs azure-web-app-service azure-storage-queues azure-webjobs-triggered


    【解决方案1】:

    从存储队列中获取多条消息并执行 并行

    您如何判断接收多条消息并并行执行?你有多个实例吗?

    我在不同的情况下测试代码。

    1)正常的situation,不设置batchsize,它会拖拽队列中的所有消息。但是我认为它仍然会一个接一个运行。但是从结果我认为它不会等待最后一次运行完全结束了。Here 是结果。

    2)将batchsize设置为1,如果你经常调试代码或刷新队列,你会发现它确实拖了一条消息一次运行。这是result

    3) 将batchsize设置为3并调试,它只是改变拖动的消息编号,每次它会拖动3条消息,然后它会正常运行而不设置batchsizeHere是结果。我发现如果你只是运行 not debug ,order 控制台显示非常有条理。

    因此,如果您没有运行其他实例,我认为这是在顺序模式下工作。 如果这不符合您的要求或您仍有疑问,请告诉我。

    【讨论】:

    • 我有一个表,它将跟踪消息执行状态,pending->inprocess->completed/failed。在这种情况下,队列中的所有消息在到达队列后立即变为处理中。
    • @ Shubham Kalantri 在你的情况下,如果消息执行状态正在处理中,它在队列中的状态如何。拖还是不拖。并且是所有消息都被拖动或只有一个。
    • 感谢 George Chen 的宝贵时间。 BatchSize 设置对我们有用。我们遇到了一些天蓝色环境问题,因为它无法正常工作。
    • @Shubham Kalantri 你是什么意思?你发现问题了吗?你解决问题了吗?
    • @George Chen,是的,这个问题已经解决了。谢谢。
    猜你喜欢
    • 2022-06-25
    • 1970-01-01
    • 2019-10-24
    • 1970-01-01
    • 1970-01-01
    • 2015-08-19
    • 2020-02-25
    • 2020-06-20
    • 2018-02-02
    相关资源
    最近更新 更多