카프카는 대용량 트래픽을 처리하는데 뛰어난 성능을 가진 브로커이다. 다른 말로는 고성능 분산 메시지 스트리밍 플랫폼이라고도 한다.. 얼마나 좋은 장점을 가지고 있어서 많은 회사들에서 이 카프카를 사용하는지 궁금하고, 앞으로 개발을 이어가기 위해서 오늘은 윈도우 11에 Kafka 설치하는 방법을 정리한다.
여기 저기 글을 읽어보니 LinkedIn에서 내부적으로 개발되었었는데, 오픈 소스로 2011년에 풀렸다고 한다. 이 카프카는 결국에는 메시지 큐인데 Pubish와 Subscribe 개념을 알면 데이터 파이프라인을 효율적으로 그리고 실시간 적으로 관리할 수 있다.
분산 환경에서 시스템 간 데이터를 교환하기 위해서 사용되는 메시지큐는 수많은 소비자가 동시에 데이터를 소비할 수 있도록 설계되었다. 하지만, 메시지 큐는 한 번 소비자가 그 데이터를 사용해버리면 재사용이 불가하다.
메시지 브로커 --> 이벤트 브로커 O : ActiveMQ
이벤트 브로커 --> 메시지 브로커 X : Kafka
Kafka는 Pub/Sub 구조로 Broker에 메시지를 저장하고, 클러스터가 전체 메시지를 처리한다. 데이터는 토픽별로 분류되고, 여러 파티션에 분산 저장된다. 이 문장을 보면 크게 4가지 개념을 이해해야 한다.
분산 아키텍쳐에서는 여러 사람이 좋아요 누를수도 있기 때문에 Producer가 어떤 이벤트가 발생하면, 그 이벤트 정보가 "활동 로그" 라는 Topic에 발행된다.