...
Table of Contents |
---|
Status
Current state: Under DiscussionAdopted
Discussion thread: here
JIRA:
Jira | ||||||
---|---|---|---|---|---|---|
|
...
Introduce a new client config for producer consumer and admin client `reconnect.backoff.max` max.ms` defined as:
The maximum amount of time in milliseconds to wait when reconnecting to a broker that has repeatedly failed to connect. If provided, the backoff per host will increase exponentially for each consecutive connection failure, up to this maximum. The actual backoff will be determined randomly, with uniform distribution, to To avoid connection storms. In practice the average backoff when this threshold is hit will be (reconnect.backoff.max - reconnect.backoff.ms) / 2., a randomization factor of 0.2 will be applied to the backoff resulting in a random range between 20% below and 20% above the computed value.
This config will default to 1000ms if `reconnect.backoff` is not set explicitly. Otherwise, it will default to the same value as `reconnect.backoff`.
...
- Provide a pluggable interface for reconnect attempts like in KIP-53: it seems like we can provide the desired functionality via a single config so pluggability is not worth the additional complexity.
- Default `reconnect.backoff.max` max.ms` to the same value as `reconnect.backoff` backoff.ms` so that existing behaviour is always maintained: for the reasons explained in the compatibility section
- Default `reconnect.backoff.max` max.ms` to `1000ms` unconditionally: for the reasons explained in the compatibility section.
...