Cloudflare
기술 블로그
C레벨 - 고난도

Cloudflare FL2: 15년 된 NGINX를 Rust로 완전 재작성

인프라
백엔드
보안
RustOxy FrameworkTokioSystemdNGINXLuaJIT
2025년 9월조회 1면접 0원문 보기

배경

Cloudflare의 핵심 요청 처리 레이어(FL)는 15년 전 NGINX + PHP로 시작, 2013년 NGINX + OpenResty/LuaJIT로 재작성됨. 제품 기능 누적으로 유지보수와 성능 문제 심화.

도전 과제

모놀리식 FL1 아키텍처에서 새 제품 추가마다 레이턴시 증가. LuaJIT 버그 우회, 동적 Lua 코드의 에러 증가. 복잡한 상호의존성으로 변경 위험 높음.

해결 방안

FL2: Rust 기반 모듈형 프록시로 완전 재작성. Oxy 프레임워크 활용. 엄격한 모듈 프레임워크(명시적 단계 정의, 입출력 계약). Systemd 소켓 활성화로 무중단 배포. Flamingo 시스템으로 수천 개 E2E 테스트.

결과

중위 레이턴시 10ms 감소(25% 성능 향상). CPU 50% 절감, 메모리 대폭 감소. 기능 배포 수주→48시간으로 단축. Rust 컴파일 타임 보안 보장.

핵심 인사이트

  • 1.점진적 마이그레이션이 개발 중단 없이 시스템 교체를 가능하게 함
  • 2.엄격한 모듈 계약이 기능 간 상호작용을 방지하고 유지보수성 향상
  • 3.Rust가 성능과 안정성 모두에서 Lua/C 조합을 크게 상회

이 사례 기반 면접에 도전해보세요

Cloudflare의 실제 기술적 결정과 트레이드오프를 깊이 파고드는 면접 질문 2가 준비되어 있습니다

ARCHITECTURE
BACKEND
타이머사례 참조 가능결과 아카이브

로그인 없이 바로 면접을 시작할 수 있습니다