gpt4 book ai didi

azure - 为什么 Azure 事件中心 EventData 的 PartitionKey 字段为空?

转载 作者:行者123 更新时间:2023-12-02 23:46:17 24 4
gpt4 key购买 nike

我正在使用 Azure Functions 1.x 从 Azure 事件中心使用 EventData 事件。但是,我注意到 PartitionKey 始终为空。然而,OffsetSequenceNumber 都已填充。

我知道发送者可以选择设置 PartitionKey。事实上,它是recommended出于性能原因不要设置它。但是,我假设在到达消费者的途中的某个地方,将使用处理 EventData 的分区来设置 PartitionKey

如果情况并非如此,发送 OffsetSequenceNumber 有何意义?每个分区都维护自己的 OffsetSequenceNumber。如果我想重播一个事件,在不知道 PartitionKey 的情况下该怎么做?

编辑:

我刚刚发现,如果我绑定(bind)到 PartitionContext,我可以查看 EventData 来自的 PartitionId。为什么不使用它来填充 EventData 上的 PartitionKey?这是 Azure Functions 的错误吗?

最佳答案

PartitionKeydifferent来自 PartitionId:

PartitionId is different than PartitionKey. Partition keys are used to ensure same partition keys to land on the same partition ids. You can think PartitionKey to partitionId relation as "f(partitionKey) = partitionId" where f is a hashing function.

如果发送者未设置PartitionKey,则该PartitionKey将为空,如Ling Toh所述。 .

您可以使用 PartitionContext 绑定(bind)访问 Azure Functions 中的 PartitionId

关于azure - 为什么 Azure 事件中心 EventData 的 PartitionKey 字段为空?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49454349/

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