gpt4 book ai didi

.net - Azure.Storage.Queues : calling QueueClient. 并行 SendMessageAsync

转载 作者:行者123 更新时间:2023-12-03 04:56:40 24 4
gpt4 key购买 nike

如果我并行调用 QueueClient.SendMessageAsync (Azure.Storage.Queues) 会有什么好处吗?目前我这样调用它:

        var client = new QueueClient(
Options.CurrentValue.ConnectionString,
Options.CurrentValue.ItemRecalculateQueueName);

foreach (var item in items)
{
var message = CreateItemRecalculationMessage(item);

try
{
await client.SendMessageAsync(message, ct);
}
catch (Exception e)
{
Log.Error(e, "Failed to recalculate item {item}", item);
}
}

如果是这样,合理的并行化是否有任何限制?目前消息是按顺序添加的。

谢谢拉德克

最佳答案

Would it make any benefit if I call QueueClient.SendMessageAsync(Azure.Storage.Queues) in parallel?

当然。使用 Task.WaitAll() 并行发送消息肯定会让您受益匪浅。因为您将能够在相同的时间内发送更多消息。

If so, is there any limit of reasonable parallelization?

根据我的经验,将最大并行任务数限制为虚拟 CPU 数可提供最佳结果。我相信这与 CPU 级别的上下文切换有关。

关于.net - Azure.Storage.Queues : calling QueueClient. 并行 SendMessageAsync,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67484535/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com