lagom:是每个节点或整个群集中的读取侧碎片的数量



lagom允许将读取侧处理器分成碎片以扩展事件处理。

object BlogEvent {
  val NumShards = 20
  val Tag       = AggregateEventTag.sharded[BlogEvent](NumShards)
}
sealed trait BlogEvent extends AggregateEvent[BlogEvent] {
  override def aggregateTag: AggregateEventShards[BlogEvent] = BlogEvent.Tag
}

假设我有5个节点,这是否意味着碎片总数为20 x 5 = 100,还是整个集群中的碎片总数为20?

这是整个集群的碎片总数。

假设我有5个节点,这是否意味着碎片的总数将为20 x 5 = 100,或者总的碎片总数在整个集群中为20?

number_of_shards = 20 * numer_of_processors

使用您的示例:

object BlogEvent {
  val NumShards = 20
  val Tag       = AggregateEventTag.sharded[BlogEvent](NumShards)
}

在您的群集中,无论大小有多大,总会有20个读取侧处理器消耗BlogEvent s流的实例。这意味着,如果您创建了BlogRSSReadSideProcessorBlogAtomReadSideProcessorBlogTopicProducer,则每种碎片总共将出于其自己的目的(RSS,ATOM或发出主题(,每个碎片每次消耗特定的流标签。这意味着您的数据库将保持60个连接,以轮询Journal表。

相关内容

  • 没有找到相关文章

最新更新