home
프로그램 내에서 코드로 카프카 관리하기
AdminClient 개요
- Admin client는 비동기적으로 작동
- Future 객체를 반환한다
- 매개변수는 컨슈머, 프로듀서보다 간단한데
client.dns.loopup
,request.timeout.ms
이다.
AdminClient 기능
admin.listTopics()
를 통해서 토픽 목록 조회 가능- Future 객체를 반환받기에
get()
를 사용하면 값을 받을 수 있음 (단 블로킹)
ConfigResource
- 브로커, 브로커로그, 토픽 자원을 설정 가능하다.
컨슈머 그룹 관리
admin.listConsumerGroups().valid().get().foreach(System.out::println)
으로 컨슈머 그룹 조회가 가능- AdminClient를 통해서 컨슈머 그룹이 일고 있는 파티션의 마지막으로 커밋된 오프셋과 렉을 알 수 있다.
그 외 고급 관리
- 토픽에 파티션 추가
- 토픽 레코드 삭제
- 리더 선출
- 레플리카 재할당
- MockAdminClient로 테스트 가능