Antony Stubbs created KAFKA-7725:
------------------------------------

             Summary: Add a delay for further CG rebalances, beyond KIP-134 
group.initial.rebalance.delay.ms
                 Key: KAFKA-7725
                 URL: https://issues.apache.org/jira/browse/KAFKA-7725
             Project: Kafka
          Issue Type: New Feature
          Components: clients, consumer, core
    Affects Versions: 2.1.0
            Reporter: Antony Stubbs


KIP-134 group.initial.rebalance.delay.ms was a good start, but there are much 
bigger problems where after a system is up and running, consumers can leave and 
join in large amounts, causing rebalance storms. One example is Mesosphere 
deploying new versions of an app - say there are 10 instances, then 10 more 
instances are deployed with the new version, then the old 10 are scaled down. 
Ideally this would be 1 or 2 rebalances, instead of 20.

The trade off is that if the delay is 5 seconds, every consumer joining within 
that window would extend it by another 5 seconds, potentially causing 
partitions to never be processed. To mitigate this, either a max rebalance 
delay could also be added, or multiple consumers joining won't extend the 
rebalance delay, so that it's always a max of 5 seconds.

Related: [KIP-345: Introduce static membership protocol to reduce consumer 
rebalances|https://cwiki.apache.org/confluence/display/KAFKA/KIP-345%3A+Introduce+static+membership+protocol+to+reduce+consumer+rebalances]
KAFKA-7018: persist memberId for consumer restart



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to