카프카

카프카(Kafka)는 주문 처리 서비스를 회계 및 사기 탐지 서비스와 연결하는 메시지 큐 서비스로 사용된다.

카프카 서비스 소스

설정

변수기본값설명
KAFKA_TOPICorders주문 처리 서비스가 주문 메시지를 발행하고, 회계 및 사기 탐지 서비스가 메시지를 소비하는 토픽

세 서비스 모두 같은 변수를 읽으므로, 개별 서비스가 아닌 .env(혹은 .env.override)에서 변경해야 하며, 그렇지 않으면 프로듀서와 컨슈머가 서로 다른 토픽을 사용하게 된다.

자동 계측

이 서비스는 오픈텔레메트리(OpenTelemetry) Java 에이전트와 내장된 JMX 메트릭 인사이트 모듈을 사용하여 카프카 브로커 메트릭을 수집하고 OTLP를 통해 컬렉터로 전송한다.

에이전트는 -javaagent 명령줄 인수를 사용하여 프로세스에 전달된다. 명령줄 인수는 Dockerfile의 KAFKA_OPTS를 통해 추가된다.

ENV KAFKA_OPTS="-javaagent:/tmp/opentelemetry-javaagent.jar -Dotel.jmx.target.system=kafka-broker"