Consumer groups are multiple clients, acting together to consume messages from
one or more streams and partitions. Consumer groups are used in cases where the incoming
number of messages to be processed is very high, or the consumption of the incoming
messages needs more reliability than a single client can provide.
Note: When using Apache®
Kafka® with OpenEdge®, a
consumer must be part of a consumer group.
In Kafka, a group of consumers identify themselves (using a configuration
property) as belonging to the same group. Individual clients coordinate their consumption of streams, with a goal of
distributing the load between the clients. Each client in the consumer group is
responsible for processing messages for part of the group's configured set of streams
and partitions. If one client fails, the remaining clients and brokers rebalance the
streams and partitions assigned to each client. Kafka does this rebalancing
automatically. The characteristics of the clients and brokers are defined through
configuration settings.