Let the Kafka producer is configured with acks=all
and there are 5 broker replicas with min.insync.replica=2
configuration.
I understand that if 3 brokers go offline, but 2 brokers are still up and healthy, then the producer will still get the message acknowledgement and will be able to continue sending the messages.
But what happens if all 5 brokers are up and healthy:
- #1 Will the producer receive the acknowledgement only after all 5 brokers write the message to themselves?
- #2 Or will the producer already receive the acknowledgement after 2 brokers write the message? So it will not wait for the feedback from the remaining other 3 brokers?
I am interesting in the throughput in the case when all broker replicas are healthy: will the throughput with min.insync.replica=2
will be higher then with min.insync.replica=5
(for acks=all
and 5 broker replicas)?