incastle의 콩나물
Amazon MSK(Managed Streaming for Apache Kafka) 본문
Apache Kafka
Publish-Subscribe 모델을 구현한 분산 메시징 시스템이다.
(=어플리케이션간에 메세지를 교환하기 위해 사용되는 메세징 시스템)
잠깐 Publish-Subscribe?
데이터를 만들어내는 프로듀서(Producer, 생산자), 소비하는 컨슈머(Consumer, 소비자)
그리고 이 둘 사이에서 중재자 역할을 하는 브로커(Broker)로 구성된 느슨한 결합(Loosely Coupled)의 시스템이다.
프로듀서가 메세지를 보내면 카프카가 이걸 보관하고 있다가
컨슈머가 카프카에 저장된 메세지를 필요할 때 확인하는 것
왜 쓰는가?
기존은 생산자와 이에 상응하는 소비자를 명시해야함
카프카는 생산자는 메세지를 전송만 하고(누가 받을지 신경 안씀)
수신자는 카프카에게 원하는 토픽을 구독하면 됨
누가 보냈는지 신경 안쓰고 필요한 메세지만 구독하는 방식
구조가 매우 단순해지면서 유지보수, 에러발생, 트래픽 장점
kafka의 용도
- 메세지 처리
- 사용자의 웹 사이트 활동 추적 파이프라인
- 애플리케이션의 통계 집계
- 시간순으로 발생하는 이벤트를 저장해 필요한 곳으로 보냄
Amazon MSK
Apache Kafka를 사용하여 스트리밍 데이터를 처리하는 애플리케이션을 빌드하고 실행할 수 있는 완전관리형 서비스
Comments