본문 바로가기

카프카3

카프카 프로듀서와 컨슈머 프로듀서메시지를 발행하는 주체메시지 발행시 대부분 비동기 방식으로 동작 (스프링 카프카)카프카는 기본적으로 라운드 로빈으로 토픽안에 파티션에 분산 저장한다. 따라서 프로듀서는 해당부분을 신경 쓸 필요가 없다. 컨슈머카프카 브로커로부터 메시지를 구독하여 가져오는 주체다. 컨슈머 그룹같은 그룹ID를 가진 컨슈머들이 하나의 그룹을 이루어 하나 이상의 토픽을 함께 구독하는 논리적 단위 한 컨슈머 그룹 내의 여러 컨슈머는 토픽의 파티션을 나누어 점유. 이 때, 컨슈머가 여러개 있더라도 딱 한번만 메시지를 가져간다.예를들어 주문서버에서 발행된 메시지를 상품서버에서 재고처리를 할 때 트래픽에 따라 상품서버가 여러대가 있다.여러대의 서버를 같은 그룹 ID로 묶어서 파티션을 분담할 수 있다. 여러 컨슈머 그룹이 한 토픽.. 2026. 4. 2.
카프카 클러스터 카프카는 고가용성 메시지 시스템으로 분산 복제 구조를 지향한다.카프카는 클러스터를 항상 전제한다. 클러스터는 브로커들의 집합이다. 브로커실질적인 서버 클러스터 내의 서버 인스턴스브로커는 발행자 수신자의 요청 처리 및 메시지를 저장하고 관리한다.브로커 내부에는 파티션이라는 작은 단위가 있다. 토픽토픽은 여러개의 파티션을 포함하고 여러개의 브로커에 걸쳐있을 수 있다.카프카에 발행되는 메시지가 기록되는 논리적인 단위이다.생산자 소비자는 토픽단위로 송수신한다. 파티션파티션은 토픽이라는 논리적인 영역안에 구성되고 메시지가 저장되는 물리적인 단위이다.파티션에 메시지를 저장하고 관리 함파티션은 메시지가 실질적으로 저장되는 물리적인 단위이다.파티션을 논리적 단위로 묶은 토픽이 있다.파티션 안에서는 시간 순서가 보장 됨.. 2026. 4. 2.
카프카의 특징 서버간 요청에서 자주 사용 됨비동기 처리를 할 수 있다. 1. 서버 간 요청HTTP API 기반에서는 받는 서버가 불능 상태일 때 요청이 유실 가능하다응답 결과를 기다려야 하는 동기적 처리 때문에 성능이 저하됨 카프카에 물리적으로 메시지가 저장되므로 요청유실 방지 및 재처리가 가능처리 결과를 기다리지 않는 비동기적 발행을 통한 성능 향상 가능 메시지 버스로 사용하여 여러 서버에서 메시지를 가져가도록 할 수도 있다. 2. 로그/이벤트 수집여러 서버에서 발생하는 로그를 카프카로 모으고 로그 가공 전용서버(로그 스태시 등)를 실행시킨다.로그스태시는 엘라스틱서치에 정보를 제공 키바나로 관찰한다.로그 뿐만 아니라 하둡을 이용해서 AI 학습 목적으로 사용할 수 있다. 3. 데이터 파이프라인특정 시스템의 데이터를 모.. 2026. 4. 2.