几个月前,我创建了一个具有默认2分区计数的事件中心。
现在我正在转向生产,并意识到我无法增加分区数。
那么任何可以帮助我理解我应该增加分区数的情况吗?
请帮帮我们
答案 0 :(得分:0)
它允许您扩展并行使用者的数量。每个消费者都会锁定他们正在读取的分区。事件均匀分布在已配置的分区数量上。
因此,只有当您认为现在或在(近)未来您将无法足够快地处理传入事件时,您才需要增加分区计数(通过重新创建事件中心)。
总结:由于您只有2个分区,因此只能有2个消费流程处理并行处理项目(对于给定的消费者群体)。
另请参阅excellent docs。
答案 1 :(得分:0)
简短的回答是,在延迟和复杂性之间进行权衡。
长答案:
在以下情况下,较少的分区号可能是更好的选择:
i。您关心事件的顺序。在每个分区中 事件按顺序排列。因此,如果您关心事件的顺序,那么减少分区数将有助于使事件按顺序播放更容易。
ii。如果您使用的是EventProcessorHost拥有使用方的客户端,则您不能有多个线程使用同一个分区,以防万一您出于某种原因想要这样做。 如果您使用的不是EventProcessorHost的使用方客户端,那么如果您没有严格的延迟要求,则管理较少的分区将使代码更容易,因为您需要确保每个接收的分区至少有一个使用方事件。