Hi all,

I’m new to Kafka and have a very basic question:

We build a cloud-scale platform and evaluate if we can use Kafka for pub-sub 
messaging between our services. Most of our services scale dynamically based on 
load (number of requests, CPU load etc.). In our current architecture, services 
are both, producers and consumers since all services listen to some kind of 
events.

With Kafka, I assume we have two restrictions or issues:

  1.  Number of consumers is restricted to the number of partitions of a topic. 
Changing the number of partitions is a relatively expensive operation (at least 
compared to scaling services). Is it necessary to overprovision on the number 
of partitions in order to be prepared for load peaks?
  2.  Adding or removing consumers halts processing of the related partition 
for a short period of time. Is it possible to avoid or significantly minimize 
this lag?

Are there any additional best practices to implement Kafka consumers on a cloud 
scale environment?

Thanks,
Moritz

Reply via email to