AI Briefing

Cloudflare, DNS 캐시 구조 최적화로 100TB 메모리 절감

·2026.08.28 02:02

핵심 내용

Cloudflare가 DNS 캐시 저장 방식을 최적화해 100TB의 메모리를 절감하고 성능을 향상시켰다.

자세히 보기

Cloudflare의 DNS 서비스 플랫폼인 Big Pineapple은 2,500억 개 이상의 DNS 캐시 엔트리를 저장하고 있습니다. 엔트리당 1바이트의 메모리 낭비만으로도 전체 플릿에서 250GB 이상의 비용이 발생했기 때문에, 저장 구조 최적화가 필수적이었습니다.

메모리 사용량 50% 이상 절감

캐시 엔트리 저장 방식을 5차례 개선했으며, 이를 통해 엔트리당 메모리 사용량을 50% 이상 줄였습니다. 그 결과 전체 플릿에서 약 100TB의 메모리를 확보했으며, 이는 Gen 13 서버 130대의 RAM 용량에 해당합니다.

성능 향상 효과

메모리 효율 개선은 성능 저하를 초래하지 않았습니다. 오히려 할당 횟수 감소와 메모리 로컬리티 개선으로 인해 삽입 처리량(insert throughput)이 43% 증가하고 조회 지연 시간(lookup latency)이 19% 감소했습니다.

주요 최적화 기법

  • Vec에서 Box<[T]>로 변경: DNS 응답은 저장 후 수정되지 않으므로, 불필요한 capacity 필드(8바이트)와 과도한 힙 공간을 제거했습니다. 이를 통해 엔트리당 64바이트를 절감했습니다.
  • 단일 리스트와 오프셋 사용: Answer, Authority, Additional 섹션을 별도의 리스트로 저장하던 방식을 하나의 리스트와 u16 오프셋으로 대체하여 엔트리당 28바이트를 절감했습니다.
  • 구조체 패딩 최적화: 불리언 필드를 비트플래그로 통합하고 구조체 정렬을 최적화하여 추가적인 메모리 절감 효과를 얻었습니다.

이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.

AI 처리 방식을 확인하거나, 요약 오류와 출처 표기 문제, 삭제 요청을 문의 · 건의로 알려주세요.