Kafka를 학습할 때 가장 먼저 마주하는 개념들이 있다.Topic, Partition, Offset, 그리고 Broker.도대체 이 단어들이 서로 어떤 관계를 맺고 있고,실제 메시지가 어떤 과정을 거쳐 Kafka에 저장되고,소비자(Consumer)가 어떻게 그 메시지를 읽어가는지 흐름이 잘 보이지 않을 때가 많다. Kafka는 단순한 큐 시스템이 아니다.대용량 메시지를 분산 환경에서 안전하게 저장하고, 빠르게 전송하며, 다양한 방식으로 소비할 수 있도록 설계된 데이터 스트리밍 플랫폼이다.이 글에서는 Kafka의 핵심 구조를 하나씩 뜯어보며, 기능과 동작 원리, 그리고 실제 운영 시 고려해야 할 포인트들까지 정리해보려 한다. Kafka 메시지 전달의 흐름 Kafka를 처음 접할 때 가장 먼저 이해해야 할..
"Kafka는 메시지를 큐처럼 처리하는 시스템""Pub/Sub 기반의 고성능 스트리밍 플랫폼""실시간 데이터 파이프라인 구축에 꼭 필요하다" Kafka를 처음 접하면 다양한 정의와 설명이 쏟아진다.하지만 개념이 워낙 방대하고 공부하다 보면 용어도 생소할 수 있기에 처음엔 "이게 도대체 무슨 소리지?" 하는 생각이 먼저 든다. 요즘 백엔드 개발자 신입 수준에서 우대 사항 스펙이며, MSA라는 키워드와 함께 주목받았던 Kafka다.전부터 관심있던 기술인 Kafka를 팀프로젝트에 도입해보며 공부했던 개념들을 글을 통해 시리즈로 정리해보려고 한다. 왜 Kafka가 필요하게 되었는지, 어떤 문제를 해결하려는 건지,그 맥락을 먼저 잡아두면 이후 개념들이 훨씬 잘 정리된다.이 글은 그 시작점에서 Kafka의 배경과 ..