hooneats (52) 썸네일형 리스트형 Apache Kafka java Custom Producer, Consumer yml 자동설정을 활용하지 않은 방법 Producer Consumer Producer @Configuration public class KafkaTemplateConfig { @Bean(name = "kafkaTemplateCustom") public KafkaTemplate kafkaTemplate() { return new KafkaTemplate(producerFactory()); } private ProducerFactory producerFactory() { return new DefaultKafkaProducerFactory(producerProps()); } private Map producerProps() { Map props = new HashMap(); props.put(Producer.. Apache Kafka 실습 목차 1. 실습 구상도 2. 실습 미리보기 3. akhq 4. Kafka Cluster 구축 및 관리를 위한 오픈소스 akhq 5. Spring Project 시작하기 5-1. 슬랙 채널 생성하기 5-2. 프로젝트 구조 6. Spring-Kafka Producer 만들기 7. Spring-Kafka Consumer 만들기 8. Spring-Kafka Streams 만들기 9. Slack 과 연동해 메시지 보내기 10. Prometheus 와 Grafana 를 활용해 간단한 대쉬보드 만들기 실습 구상도 [spring + java 프로젝트] docker 를 활용해 kafka-cluster 를 구축해 본다. 오픈소스 akhq 를 활용해 손쉽게 topic 을 만들어 본다. client 는 메시지를 message.. Apache Kafka 옵션 파티션 개수 토픽을 운영함에 있어 적절한 파티션 개수를 설정하는것은 성능과 관련이 있기에 중요하다. 토픽 생성시 파티션의 개수를 고려할 3가지 ( 데이터 처리량 , 메시지 키 사용 여부 , 브로커 영향도 ) 가 있다. 데이터 처리량 전체 컨슈머 데이터 처리량이 프로듀서가 보내는 데이터보다 적다면 컨슈머 랙이 생기고 데이터 처리 지연이 발생한다. 때문에 컨슈머 전체 데이터 처리량이 프로듀서 데이터 처리량 보다 많아야 한다. 프로듀서 전송 데이터량 < ( 컨슈머 데이터 처리량 * 파티션 개수 ) 메시지 키 사용 여부 메시지의 키를 사용하면 키에 따른 컨슈머에서의 메시지 처리순서가 보장된다. 그러나 운영중 파티션의 개수가 달라지면 이미 매칭된 파티선과 메시지 키의 매칭이 깨지고 전혀 다른 파티션에 다시 할당되.. Apache Kafka 개념 목차 Broker Kafka Cluster Zookeeper Topic Partition Record Producer Consumer Broker Kafka 는 빠른 처리를 위해 Topic 내에 여러 Partition 을 가질 수 있고, Partition 들을 각각의 Broker에 분산 저장한다. Kafka Client 와 데이터를 주고받기 위해 사용하는 주체 하나의 서버에는 한 개의 카프카 Broker 가 실행된다. Producer 로부터 데이터를 전달받은 Broker 는 Topic 의 Partition 에 데이터를 저장하고, Partition 의 데이터를 Segment 파일로 저장하는데, OS의 Page Cache 기능을 활용해 디스크의 입출력 속도를 높인다. PageCache 페이지 캐시는 처리한 .. 이전 1 ··· 4 5 6 7 다음