用于文档集合的Azure cosmosdb changefeed

用于文档集合的Azure cosmosdb changefeed,azure,azure-cosmosdb,Azure,Azure Cosmosdb,是否可以将在群集节点上运行的服务注册为在群集中跨多个cosmos db帐户的文档集合的changefeed的观察者 对于Azure函数(由文档集合的ChangeFeed触发),需要为集群中的每个cosmos db帐户配置该函数 changefeed处理器库如何触发service API端点? 或者,如何将在群集节点上运行的服务注册为群集中多个cosmos db帐户的文档集合changefeed的观察者?Change Feed Processor Library可以在任何控制台/辅助应用程序中

是否可以将在群集节点上运行的服务注册为在群集中跨多个cosmos db帐户的文档集合的changefeed的观察者

对于Azure函数(由文档集合的ChangeFeed触发),需要为集群中的每个cosmos db帐户配置该函数

changefeed处理器库如何触发service API端点?
或者,如何将在群集节点上运行的服务注册为群集中多个cosmos db帐户的文档集合changefeed的观察者?

Change Feed Processor Library可以在任何控制台/辅助应用程序中使用,也可以在任何能够运行应用程序的主机中运行。样本可在GitHub repo上获得


限制是一个观察者可以在一个帐户中监听一个集合。如果您有多个帐户,则每个集合(即使它们具有相同的名称)都是不同的集合,并且需要运行Change Feed Processor库的单个实例(集合不跨多个帐户)。这个实例可以与其他实例位于同一个计算单元中,它将共享资源(CPU/RAM)或者在一个独立的应用程序中。

您是否可以在此处共享更多信息,说明集合中带有触发器的azure函数是更好的选项,还是注册为更改源观察者的控制台/工作应用程序是更好的选项?它们都是有效的。这取决于您喜欢的抽象级别。使用Azure函数,您需要按执行次数付费(根据消费计划),并且可以为您处理扩展,您不需要编写观察者代码,因此注入依赖项可能会更困难,但总体编码要简单得多。有了CFP Library,你需要一个工人,你需要付费,不管发生什么变化,你对内部代码有更多的控制权,可以根据自己的喜好自定义缩放,但你也要负责维护这些工人。我正在尝试在工人和观察员注册的情况下使用CFP Library。只要监视的集合发生更改,我的租约集合就会更新。但未调用ProcessChangesSync方法。我正在从我的计算机本地运行worker服务。请检查租约中显示的所有者是否与您在worker中使用的主机名同名。如果不是,则意味着您有另一个正在运行的观察者正在使用相同的集合侦听相同的集合。如果要让多个独立工作进程侦听同一集合并使用同一个集合,请为每个工作进程组分配一个。所有者为null。我只有一个worker实例在本地运行它。