Kafka

· 회고
이번에 물류 검수 앱을 개발하면서 전체적인 인프라를 AWS에 구축함에 따라 서비스에 필요한 모든 부분을 구성하게 되었던 경험에 대한 회고를 작성한다. 범위 스택 버전 디펜던시 프론트 Vue 3.1.x Vite 백엔드 SpringBoot 3.0.3 Gradle CICD Github Actions 로그 FastAPI, ELK Pydatic, Alembic 디비 RDS(postgresql) 15 AMQP Kafka Kafka Connector 처음 기획했던 인프라 구조도는 위와 같다. 전체적인 서비스를 기획하면서 개발 플로우를 어떻게 진행할지에 대한 고민이 많았다. 기존에 진행했던 방식은 3가지 브랜치를 운영하는 방식이었다. dev 브랜치: 개발을 진행하는 브랜치로써 머지 리퀘스트를 진행한 후 개발 서버에서 ..
메시지 전달 Message 객체를 이용하여 보내고 header에 아래와 같은 값들을 포함하여 전송 할 수 있다. KafkaHeaders.TOPIC KafkaHeaders.PARTITION_ID KafkaHeaders.MESSAGE_KEY KafkaHeaders.TIMESTAMP TOPIC: kafka에서 발행할 데이터에 대한 각각의 명세들의 이름 PARTITION_ID: 어떤 파티션 아이디에 보낼지 정할 수 있음 MESSAGE_KEY: 데이터 메세지의 키를 설정 TIMESTAMP: 데이터를 보낸 시간을 정함 폴더 구조 컨트롤러: RestAPI에서 요청을 받은 후 카프카에 토픽을 보냄 리스너: 카프카에서 데이터를 발행하면 리스너에서 구독하고 있다가 요청이 발생하면 정해진 로직을 처리함 메세지: 실제로 보낼..
출처: https://velog.io/@seungyeon/카프카-무엇이고-왜-필요할까 카프카 데이터 플랫폼의 최강자 1장을 읽고 정리한 내용입니다. 배경지식 MOM(Message Oriented Middleware) : 메시지 지향 미들웨어1.1 다른 미들웨어 종류: RPC 방식, ORB 방식1.2 미들웨어: 어플리케이션들을 연결시켜, 서로 데이터를 교환할 수 있게 해주는 소프트웨어1.3 메시지 지향: 메시지 전달을 통해 데이터를 교환할 수 있게 만들어주는 시스템. Message Broker2.1 MOM 기반으로 메시지 전송을 담당하는 시스템.2.2 Publisher(송신자)로부터 전달받은 메시지를 Subscriber(수신자)로 전달해주는 중간 역할 → 응용 소프트웨어 간에 메시지 교환 담당2.3 이때,..
Say simple
'Kafka' 태그의 글 목록