4.2. 소비자 그룹을 사용하여 데이터 소비 스케일링

소비자 그룹은 지정된 주제에서 하나 또는 여러 생산자가 생성한 일반적으로 큰 데이터 스트림을 공유합니다. Consumer는 group.id 속성을 사용하여 그룹화되므로 메시지가 멤버 전체에 분산됩니다. 그룹의 소비자 중 하나가 리더로 선택되고 그룹의 사용자에게 파티션이 할당되는 방법을 결정합니다. 각 파티션은 단일 사용자에게만 할당할 수 있습니다.

파티션 만큼의 소비자가 아직 없는 경우 동일한 group.id 에 더 많은 소비자 인스턴스를 추가하여 데이터 소비를 확장할 수 있습니다. 파티션이 있는 것보다 그룹에 더 많은 소비자를 추가하면 처리량에 도움이 되지 않지만, 사용자가 한 번 작동하지 않아야 한다는 것을 의미합니다. 소비자 수를 줄이고 처리량 목표를 충족할 수 있다면 리소스를 절약할 수 있습니다.

동일한 소비자 그룹 내의 소비자는 오프셋 커밋과 하트비트를 동일한 브로커에 보냅니다. 따라서 그룹의 소비자 수가 많을수록 브로커의 요청 부하가 높아집니다.

# ...
group.id=my-group-id 1
# ...
1
그룹 ID를 사용하여 소비자 그룹에 소비자를 추가합니다.