【问题标题】:CosmosDB Change the Change Feed Processor NameCosmosDB 更改更改源处理器名称
【发布时间】:2021-04-03 12:18:22
【问题描述】:

我有一个更改提要处理器:

var changeFeedProcessor = monitoredContainer
    .GetChangeFeedProcessorBuilder<Model>("original-processor-name", HandleChangesAsync)
        .WithInstanceName(Environment.MachineName)
        .WithLeaseContainer(leaseContainer)
        .Build();

HandleChangesAsync() 变得太大,故障不再被很好地隔离。我想将其分解为多个处理器,即“new-processor-name-1”和“new-processor-name-2”,但我不确定如何以新的方式进行处理处理器不会从一开始就重新处理所有现有文档。

有什么方法可以让新处理器从原来的处理器停止的地方开始?

【问题讨论】:

  • @jdweng 我不能说。您提到的具体内容可能会有所帮助吗?
  • 代码示例。
  • @jdweng 我认为这两个代码示例都没有显示如何重命名或拆分提要处理器。谢谢
  • 你是什么客户?

标签: c# azure-cosmosdb azure-cosmosdb-changefeed


【解决方案1】:

您可以再创建一个changeFeedProcessor 并编写它自己的HandleChangesAsync 方法。另请注意,您可以在其设置中提供相同的Lease prefix 和相同的Lease container,以确保这两个处理器根据彼此的检查点工作(如果这是您想要实现的),否则如果您希望两个处理器都工作单独使用它们自己的检查点,您可以为它们使用单​​独的 Lease 前缀。

【讨论】: