Скажем, у меня 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
с.Это означает, что если вы создали BlogRSSReadSideProcessor
, а также BlogAtomReadSideProcessor
и BlogTopicProducer
, у вас было бы в общей сложности 60 шардов, каждый из которых потреблял бы определенный тег потока для своих собственных целей (RSS, Atom или передачу в тему).,Это означает, что ваша база данных будет содержать 60 соединений, опрашивающих таблицу Journal
.