Apacke Kafka Thread Listener

0

Domanda

Diciamo che ho 50 Kafka Argomenti, ognuno con 3 partizioni, per un totale di 150 partizioni. Se ho un KafkaListener/Consumatore configurato per ciascuno di questi 150 partizioni (a causa del volume elevato su ogni partizione), vuol dire che devo 150 ascoltatori in esecuzione. Da quello che ho capito, ogni ascoltatore ha il suo thread. Quindi significa che ci sarà di 150 thread attivi in questo scenario? Che sembra come un sacco. C'è qualche modo per limitare questo per un numero massimo di thread alla volta(diciamo 20)?

2
0

Kafka dà sempre una singola partizione per i dati di un consumatore thread

Per limitare il numero di thread per 20 con 150 partizioni, è possibile impostare la concorrenza 8 che dovrebbe creare efficacemente 8 separata dei consumatori istanze & limitare il numero di thread per un massimo di <19 (150/8).

Questa è un'altra serie di post sull'argomento, che spiega un po ' di più per l'impostazione di concorrenza nel kafka ascoltatore di fabbrica. Anche questo è un altro decente origine per spiegare alcuni concetti intorno kafka argomenti & partizioni.

2021-11-24 04:47:11
0
  1. Se si vuole massimizzare il consumo, sì, avete bisogno di 150 consumer threads 150 partitions (1 consumatore thread per partizione). Nel caso In cui si hanno solo 20, non è possibile desidera massimizzare il consumo, invece, ora 1 consumatore è responsabile per l'utilizzo ad esempio 150/20=7 partitions. Si tratta di un compromesso.

  2. Non voglio la tua app consuma 50 topics in un momento. Essa conduce alla scala problema. Diciamo ora un argomento che ha bisogno di aumentare il numero dei suoi partitions da 3 a 6, è in orizzontale scala app da 1 a 2 istanze, il che significa che da 150 consumers a 300 consumers e ci sono solo 150 + (6-3) = 153 attivo consumers, gli altri diventano inattivi.

2021-11-25 03:34:09

In altre lingue

Questa pagina è in altre lingue

Русский
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................