DUE TO SPAM, SIGN-UP IS DISABLED. Goto Selfserve wiki signup and request an account.
...
As we will be making heavier use of the group coordinator executor, we will add a new group.coordinator.executorbackground.threads config option to control the number of threads in the executor. Currently, the group coordinator executor only has a single thread. We will default the new config option to 2 threads, to reduce contention when multiple groups want to run assignors at the same time. We will also add thread idle ratio, queue and processing time metrics for the executor, analogous to the existing thread-idle-ratio-avg, event-queue-time-ms and event-processing-time-ms metrics.
...
- The idle ratio of the executor thread pool, analogous to the event processor's thread-idle-ratio-avg metric.
- kafka.server:type=group-coordinator-metrics,name=executorbackground-thread-idle-ratio-avg
- The queue time of tasks in the group coordinator executor.
- kafka.server:type=group-coordinator-metrics,name=executorbackground-queue-time-ms-p50
- kafka.server:type=group-coordinator-metrics,name=executorbackground-queue-time-ms-p95
- kafka.server:type=group-coordinator-metrics,name=executorbackground-queue-time-ms-p99
- kafka.server:type=group-coordinator-metrics,name=executorbackground-queue-time-ms-p999
- kafka.server:type=group-coordinator-metrics,name=executorbackground-queue-time-ms-max
- The processing time of tasks in the group coordinator executor.
- kafka.server:type=group-coordinator-metrics,name=executorbackground-processing-time-ms-p50
- kafka.server:type=group-coordinator-metrics,name=executorbackground-processing-time-ms-p95
- kafka.server:type=group-coordinator-metrics,name=executorbackground-processing-time-ms-p99
- kafka.server:type=group-coordinator-metrics,name=executorbackground-processing-time-ms-p999
- kafka.server:type=group-coordinator-metrics,name=executorbackground-processing-time-ms-max
Although the share coordinator shares the same coordinator runtime and metrics code as the group coordinator, we intentionally avoid adding the same executor metrics to the share coordinator as its executor is currently unused.
...
We also add a group.coordinator.executorbackground.threads config option to control the number of threads in the group coordinator executor, since it may be used for running assignors going forward. Currently, the group coordinator executor only has a single thread. We will default this config option to 2 threads, to reduce contention when multiple groups want to run assignors at the same time. This config option will not be dynamic.
...
| Name | Type | "Previous" Value | Default | Doc |
|---|---|---|---|---|
| group.coordinator.executorbackground.threads | int | 1 | 2 | The number of executor threads used by the group coordinator for processing background tasks (e.g. updating regular expression subscriptions and offloaded assignments). |
| group.consumer.assignment.interval.ms | int | 0 ms | 1,000 ms | The interval between assignment updates for a consumer group. |
| group.share.assignment.interval.ms | int | 0 ms | 1,000 ms | The interval between assignment updates for a share group. |
| group.streams.assignment.interval.ms | int | 0 ms | 1,000 ms | The interval between assignment updates for a streams group. |
| group.consumer.min.assignment.interval.ms | int | - | 0 ms | The minimum interval between assignment updates for a consumer group. |
| group.share.min.assignment.interval.ms | int | - | 0 ms | The minimum interval between assignment updates for a share group. |
| group.streams.min.assignment.interval.ms | int | - | 0 ms | The minimum interval between assignment updates for a streams group. |
| group.consumer.max.assignment.interval.ms | int | - | 15,000 ms | The maximum interval between assignment updates for a consumer group. |
| group.share.max.assignment.interval.ms | int | - | 15,000 ms | The maximum interval between assignment updates for a share group. |
| group.streams.max.assignment.interval.ms | int | - | 15,000 ms | The maximum interval between assignment updates for a streams group. |
| group.consumer.assignor.offload.enable | bool | false | true | Whether to offload consumer group assignment to a group coordinator executor threadbackground thread. |
| group.share.assignor.offload.enable | bool | false | true | Whether to offload share group assignment to a group coordinator executor background thread. |
| group.streams.assignor.offload.enable | bool | false | true | Whether to offload streams group assignment to a group coordinator executor background thread. |
Group Configurations
...
| Name | Type | Default | Doc |
|---|---|---|---|
| consumer.assignment.interval.ms | int | -1 | The interval between assignment updates for a consumer group. |
| share.assignment.interval.ms | int | -1 | The interval between assignment updates for a share group. |
| streams.assignment.interval.ms | int | -1 | The interval between assignment updates for a streams group. |
| consumer.assignor.offload.enable | bool | not set | Whether to offload consumer group assignment to a group coordinator executor background thread. |
| share.assignor.offload.enable | bool | not set | Whether to offload share group assignment to a group coordinator executor background thread. |
| streams.assignor.offload.enable | bool | not set | Whether to offload streams group assignment to a group coordinator executor background thread. |
KRPC
ConsumerGroupHeartbeat API
...