Pulsar 개요
Pulsar 개요 (Pulsar Overview)
Pulsar를 처음 만나는 분들이라면 "이게 정확히 뭘 하는 시스템이지?"라는 질문부터 시작하게 돼요. Apache Pulsar는 서버 간(server-to-server) 메시징을 위한 멀티 테넌트·고성능 솔루션이에요. 원래 Yahoo에서 개발했고, 지금은 Apache Software Foundation(ASF)에서 관리하는 오픈소스 프로젝트예요.
본문
핵심 특징
Pulsar가 다른 메시징 시스템과 구분되는 특징을 몇 가지 꼽아볼게요.
- 멀티 클러스터 네이티브: 하나의 Pulsar 인스턴스 안에서 여러 클러스터를 기본 지원하고, 클러스터 간 메시지 지오레플리케이션(geo-replication)도 매끄럽게 동작해요.
- 낮은 지연시간: publish latency와 end-to-end latency가 모두 매우 낮아요.
- 초대용량 토픽: 백만 개가 넘는 토픽까지 무리 없이 확장할 수 있어요.
- 다양한 언어 클라이언트: Java, Go, Python, C++, C#/.NET, Node.js, WebSocket 바인딩을 제공하는 단순한 클라이언트 API를 써요.
- Pulsar Functions: 스트림 네이티브 데이터 처리를 위한 경량 서버리스 컴퓨팅 프레임워크예요.
- Pulsar IO: Pulsar Functions 위에 구축된 서버리스 커넥터 프레임워크로, 데이터를 Pulsar 안팎으로 옮기는 작업을 쉽게 만들어줘요.
함께 보면 좋은 문서
Pulsar 개념을 더 깊이 보려면 다음 문서들을 순서대로 따라가면 돼요.
- Messaging Concepts — 메시지와 토픽, 구독의 기본 개념
- Architecture Overview — 브로커·북키퍼·ZooKeeper로 이어지는 아키텍처
- Pulsar Clients — 프로듀서·컨슈머·리더 클라이언트
- Geo Replication — 클러스터 간 메시지 복제
- Multi Tenancy — 테넌트·네임스페이스 기반 격리
- Authentication and Authorization — 인증·인가
- Topic Compaction — 토픽 컴팩션
- Message throttling, Proxy support with SNI routing, Multiple advertised listeners
더 알아보기
- 메시지가 어떻게 만들어지고 소비되는지, 토픽과 구독이 무엇인지는 Messaging 문서에서 다뤄요.
- 실제로 메시지를 주고받는 프로듀서·컨슈머·리더는 Pulsar Clients 문서를 보면 돼요.
- 토픽 데이터의 형태를 합의하는 방법은 스키마 이해하기 문서에서 설명해요.