Kafka는 빠르다 - 하지만 나는 Postgres를 쓸 거다

1 week ago 7

핵심 주장

기술 업계가 두 진영으로 나뉜다:

  • 진영 1: 유행어를 쫓아 복잡한 최신 기술 스택을 무분별하게 도입
  • 진영 2: 상식적이고 실용적인 접근으로 필요한 만큼만 사용

저자는 대부분의 경우 Kafka 대신 Postgres를 pub/sub 및 큐 시스템으로 사용할 수 있다고 주장.

벤치마크 결과

Pub/Sub 성능

  • 4 vCPU 단일 노드: 초당 5,036개 메시지 쓰기, 25,183개 읽기 (5배 팬아웃)
  • 4 vCPU 3노드 복제: 비슷한 처리량 유지, 레이턴시 약간 증가
  • 96 vCPU 단일 노드: 초당 243,000개 메시지, 1.16 GiB/s 읽기 속도

큐(Queue) 성능

  • 4 vCPU 단일 노드: 초당 2,885개 메시지
  • 96 vCPU 단일 노드: 초당 20,144개 메시지

주요 논점

  1. 하드웨어 발전: 최신 하드웨어(192코어 CPU, 4TB RAM)로 단일 노드가 매우 강력해짐
  2. Postgres 르네상스: "모든 것에 Postgres 쓰자" 운동이 성장 중
  3. 실용성: OpenAI 같은 거대 스타트업도 여전히 단일 Postgres 인스턴스 사용
  4. 조직적 오버헤드: 새로운 기술 도입은 학습, 운영, 모니터링 등의 비용 발생

결론

"Postgres가 깨질 때까지 그냥 Postgres를 쓰자"

대부분의 회사는 초당 수 MB 수준의 처리량만 필요하며, 이는 Postgres로 충분히 감당 가능합니다. 복잡한 분산 시스템은 정말 필요할 때만 도입해야 한다는 메시지를 전달합니다.

Read Entire Article