These techniques help Kafka scale to trillions of records everyday.
- Kafka는 분산 시스템에서 메시지 큐로 사용되며, 확장성 유지가 핵심 과제임 🚀
- Kafka 아키텍처의 모든 구성 요소는 확장 가능하도록 설계됨: 생산자, 서버, 소비자 모두 독립적으로 확장 가능 ➕
- Apache Zookeeper는 서버 멤버십 정보를 관리하여 서버 간의 조정 요구 사항을 줄임 🧑🤝🧑
- 서버를 최대한 단순하게 만들어 생산자와 소비자가 메시지 전송 및 수신 속도를 자율적으로 조절하도록 함 ⚙️
- Kafka의 'Zero-copy' 최적화는 메시지를 애플리케이션 캐시에 로드하지 않고 파일 시스템 캐시에서 직접 IO 소켓으로 전송하여 메모리 요구 사항을 줄이고 전송 속도를 향상시킴 💾
- Zero-copy를 통해 메시지 게시 속도가 두 배로 빨라져 대규모 메시지 처리에 효율적임 ⚡
- 이러한 아키텍처 덕분에 LinkedIn과 같은 소셜 미디어 기업은 매일 수조 건의 메시지를 관리할 수 있음 📊