[Kafka](9)
-
[Kafka_CDC]_kafka CDC 기능으로 변경 데이터 - consumer MongoDB 저장(5단계. CDC log DB저장)
구축 목표] 실시간으로 Source DB의 데이터가 변할 때 Debezium Kafka Connecter 를 통해 consumer 에게 메세지 보내고 해당 데이터 ( Json 형식의 string type) 을 paylaod 부분 추출하여 MongoDB에 저장. 주요 과제] kafka connector 에서 제공되는 log는 json 형식의 굉장히 긴 String 값입니다. debezium document에서 제공되는 key를 접근하는 방법 탐구, 및 디비 저장 구현 예상도] 구축 환경 window - Producer ] - DB : MongoDB - zookeeper server - Kafka server - Kafka connect - Debezium connector window- Consumer ]..
2022.04.17 -
[Kafka]_Springboot에 Kafka 연결하기(feat.consumer)
목표] 1. Springboot 에 kafka 연결 후 consumer 기능 구현하기. 툴: IntelliJ 환경 : Springboot 빌더 : maven --- 1. Springboot 프로젝트를 생성한다] maven 으로 선택해야한다. 2. pom.xml에 dependency 추가 org.springframework.kafka spring-kafka 3.application.yml 생성 spring: kafka: consumer: bootstrap-servers: 여려분의 IP 주소:9092 group-id: springtest auto-offset-reset: earliest key-deserializer: org.apache.kafka.common.serialization.StringDeseri..
2022.04.17 -
[Kafka_CDC]_Kafka CDC 구현_(4단계- CDC 확인)
구축 목표] 실시간으로 DB의 데이터가 변할 때 kafka 를 통해 consumer 에게 메세지 보내기. 구현 예상도] 구축 환경 window - Producer ] - DB : MongoDB - zookeeper server - Kafka server - Kafka connect - Debezium connector Linux - virtualBox - Consumer ] - Kafka server Connector가 정상적으로 연결이 되었다면, DB 구조인 Inventory 안에 Customer 를 바라보고 CDC가 대기중 일 것입니다. 그럼 해당 topic을 확인해 보겠습니다. 1. consumer 부분인 Linux 환경] kafka 가 설치된 곳에서 다음 명령어 실행 해당 kafka server에..
2022.04.13 -
[Kafka_CDC]_Kafka CDC 구현_(3단계- Connector설치)
구축 목표] 실시간으로 DB의 데이터가 변할 때 kafka 를 통해 consumer 에게 메세지 보내기. 구현 예상도] 구축 환경 window - Producer ] - DB : MongoDB - zookeeper server - Kafka server - Kafka connect - Debezium connector Linux - virtualBox - Consumer ] - Kafka server Zookeeper, Kafka Server 설치는 다음 포스트 참고 https://yn971106.tistory.com/81 [Kafka]_설치 와 메세지 전송 테스트 개발환경] 서버 : wsl2로 설치한 Centos * virtual box 로 Linux 설치하여도 무방함 zookeeper , kafka ..
2022.04.13 -
[Kafka_CDC]_Kafka CDC 구현_(2단계- tutorial Mongodb 설치)
구축 목표] 실시간으로 DB의 데이터가 변할 때 kafka 를 통해 consumer 에게 메세지 보내기. 구현 예상도] 구축 환경 window - Producer ] - DB : MongoDB - zookeeper server - Kafka server - Kafka connect - Debezium connector Linux - virtualBox - Consumer ] - Kafka server 이번에는 Mongodb를 설치해보겠습니다. Mongodb는 tutorial의 Mongodb를 사용하였습니다. Debezium 에서 제공하는 tutorial https://debezium.io/documentation/reference/stable/tutorial.html Tutorial :: Debezium..
2022.04.13 -
[Kafka_CDC]_Kafka CDC 구현_(1단계- 설계)
구축 목표 실시간으로 DB의 데이터가 변할 때 kafka 를 통해 consumer 에게 메세지 보내기. 구현 기술 CDC : Change Data Capture 실시간 데이터 캡쳐 CDC를 사용하기 위해서는 DB를 바라보는 Kafka connect가 필요하다. 구글링 결과 MongoDB 에서 지원하는 MongoDB Kafka Connector 가 있고 https://www.mongodb.com/docs/kafka-connector/current/ MongoDB Kafka Connector — MongoDB Kafka Connector Docs Home → MongoDB Kafka ConnectorThe MongoDB Kafka connector is a Confluent-verified connector..
2022.04.13 -
[Kafka]_실전 응용 환경 적용_(kafka 1대, consumer,producer 분리)
개발환경] 서버 : wsl2로 설치한 Centos , Window * virtual box 로 Linux 설치하여도 무방함 Zookeeper 실행 -> Centos 서버 Kafka 서버 실행 -> Centos 서버 Consumer, Producer -> window 서버 구상도] 위의 Ip 는 가상이며, Cluster 의 경우 서버가 총 3대 이상이 필요하다, 필자는 한대만 사용하였고, kafka 와 zookeeper 는 같은 Ip 주소를 가지는 Centos 에서 실행함. Consumer 와 Producer 도 같은 Ip를 가지는 window 환경에서 접근한다 , Consumer 와 Producer 는 다른 Ip 여도 접근방법은 동일함. wsl2 로 window 환경에서 설치하는 방법은 다음 포스트 참고..
2022.04.06 -
[Kafka]_설치 와 메세지 전송 테스트
개발환경] 서버 : wsl2로 설치한 Centos * virtual box 로 Linux 설치하여도 무방함 zookeeper , kafka , producer , consumer 전부 하나의 centos 에서 실행함 wsl2 로 window 환경에서 설치하는 방법은 다음 포스트 참고 https://yn971106.tistory.com/73?category=1003066 [Docker]_Infra 구축_(feat. Centos7, wsl2) 목표 ] Window 환경에서 CentOS7 을 WSL2 환경에 실행후 해당 CentOS7 안에 Docker 실행하기. Docker 란? 경량 가상화 기술이며 리눅스 컨테이너를 기반으로 이미지를 기준으로 프로세스를 격리하여 yn971106.tistory.com ----..
2022.04.06 -
[Kafka]_Kafka 의 개념과, 사용 의의
Kafka 소개] 2011년 LinkedIn에서 개발된 분산 메시징 시스템이며 2014년 아파치를 통해 오픈 소스화 주요기능] Producer : 메시지를 보내는 자 consumer : 메시지를 받는자 의 모델로 이루어저 있다 고가용성& 안정성 -> 파일시스템에 메시지를 저장하기 때문에 별다른 설정 없이 영속성 보장 확장성 -> 3대의 브로커로 시작해 수십대의 브로커 확장 가능 디스크 순차 저장 및 처리 분산 처리 -> 메시지 분산 처리로 인해 단일 시스템보다 높은 성능 특징] 메시지를 메모리에 저장하지 않고 파일 시스템에 저장 TCP 기반의 Protocal을 사용하여 오버헤드 감소 컨슈머 그룹이라는 개념을 도입하여 큐와 발생/구독 모델을 모두 지원함 스트리밍 플랫폼을 구성하는 노드에 문제가 생기더라도 ..
2022.04.06