gpt4 book ai didi

azure - Cosmos DB 表请求在并行化时停止

转载 作者:行者123 更新时间:2023-12-03 04:19:13 26 4
gpt4 key购买 nike

并行启动操作时,它们通常会超时或失败

我正在使用:

  • Azure Cosmos DB 表 API
  • .NET Core 2.0(控制台应用)
  • WindowsAzure.Storage (9.2.0) nuget 包
  • 标准 CloudStorageAccount.Parse(...).CreateCloudTableClient().GetTableReference("...") 设置

    这段代码触发了 8999 个任务。每个任务都是一个 TableOperation.Retrieve,指定 PartitionKey 和 RowKey。我注入(inject)了一些代码来跟踪任务完成状态和任何 IRetryPolicy 命中。 没有 429 错误

这是最近运行的输出:

await Task.WhenAll(stuff.Select(x => table.ExecuteAsync(opGetter.Get(x))));
0:01 - 12 done
0:02 - 228 done
0:03 - 313 done
0:04 - 435 done
0:05 - 1010 done
0:06 - 1883 done
0:07 - 2833 done
0:08 - 3014 done
0:09 - 3878 done
0:10 - 5447 done
0:11 - 5569 done
0:12 - 6492 done
0:13 - 6527 done
0:14 - 6532 done
0:15 - 6541 done
0:16 - 6543 done
0:17 - 6547 done
0:18 - 6552 done
0:19 - 6554 done
0:20 - 6951 done
0:21 - 8105 done
0:22 - 8128 done
0:23 - 8591 done
0:24 - 8907 done
0:25 - 8908 done
0:29 - 8994 done
0:32 - 8996 done
1:14 - 8997 done
2:26 - 8998 done
5:02 - StatusCode: 0 "An error occurred while sending the request."
5:05 - All 8999 Done

(有时,我会收到客户端超时而不是特定错误,或者多个错误)

理想情况下,这 8999 次检索最多需要几秒钟。

我怎样才能阻止他们停滞不前?

注意:

  • 我没有摆弄任何 ServicePoint 设置,例如 max连接等
  • 我无法使用“直接模式”或“TCP”(相对于网关/Https),因为没有支持适用于 .NET Core 或 Standard 的 Cosmos DB Table API 的 SDK
  • 我怀疑问题出在客户端
  • 这是从本地服务器运行的(不是在 Azure 上)
  • 这并非“偶然”。对于像这样的大批量产品,几乎每次都会发生这种情况。

编辑:也作为 GitHub 问题发布。 https://github.com/Azure/azure-documentdb-dotnet/issues/517

最佳答案

我已将您的问题上报给产品团队,他们将在 Github 中与您联系,因为您在那里也有一个 Unresolved 问题:https://github.com/Azure/azure-documentdb-dotnet/issues/517 ,一旦找到解决方案,我将更新此线程。

关于azure - Cosmos DB 表请求在并行化时停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50575304/

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