목록 보기
Amazon MSK Express Broker에서 Kafka 트랜잭션 워크로드를 최적화하는 방법
데브옵스

Amazon MSK Express Broker에서 Kafka 트랜잭션 워크로드를 최적화하는 방법

AWS
AWS
2026년 10월 28일

두줄요약

MSK Express의 Kafka 트랜잭션 병목을 네트워크·코디네이터·클라이언트 한도로 분석했습니다.\n묶음 크기와 프로듀서 수를 먼저 조정하고 병목별 확장 전략을 제시했습니다.

문제 상황

  • Amazon MSK Express Broker의 네트워크 기준선만으로 예측하기 어려운 Kafka 트랜잭션 처리량
  • 작은 트랜잭션 묶음에서 CPU·네트워크 여유에도 코디네이터 한도에 막히는 현상

구조와 흐름

  • __transaction_state 복제 ack, 참여 파티션의 control record 기록을 포함한 커밋 경로
  • 네트워크·코디네이터·클라이언트 한도 중 최솟값으로 결정되는 클러스터 처리량
  • commitTransaction() 동기 대기와 묶음 크기÷커밋 지연으로 산정되는 프로듀서 처리량

트레이드오프

  • 묶음 크기 확대로 커밋 고정비용 분산 및 처리량 향상
  • 큰 묶음에 따른 read_committed 지연 증가, 실패 시 재처리 범위 확대, 업무 단위 제약
  • 작은 묶음의 코디네이터 병목에는 scale out, 큰 묶음의 네트워크 병목에는 scale up 선택

성능/운영 포인트

  • 프로듀서 수 증가 시 처리량과 커밋 지연을 함께 측정해 최적 동시성 탐색
  • scale out 이후 __transaction_state 파티션 재배치로 코디네이터 부하 분산
  • CloudWatch 네트워크·CPU와 애플리케이션의 커밋 수·P50/P99 지연 동시 모니터링

다음 읽기

#Kafka 주제를 이어서 읽기

Zookeeper에 의존하지 않는 Kafka를 준비하기 : Amazon MSK에서 KRaft 모드 사용하기

Amazon MSK의 KRaft 모드가 Zookeeper 의존성을 어떻게 줄이는지 설명했습니다. 또한 지원 버전, 마이그레이션 방법, 모니터링 포인트까지 정리했습니다.

AWS
AWS
백엔드
전체 보기

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...