eBPF로 스크립팅 가능한 제로설정 웹서버 Zeroserve 공개
원제: Zeroserve: A zero-config web server you can script with eBPF
왜 중요한가
웹서버 설정의 복잡성을 해결하고 eBPF를 활용한 새로운 아키텍처로 성능과 운영 편의성을 개선한 혁신사례
su3.io에서 Zeroserve라는 새로운 웹서버를 발표했다. 이 서버는 설정 파일 없이 tarball 형태의 웹사이트를 HTTPS로 서비스하며, eBPF 프로그램을 사용해 요청별 미들웨어를 실행할 수 있다. 한 코어에서 nginx보다 빠른 성능을 보인다고 밝혔다.
Zeroserve는 기존 nginx, Caddy와 차별화된 접근법을 제시하는 웹서버다. 가장 큰 특징은 별도 설정 파일 없이 eBPF 프로그램 자체가 설정 역할을 한다는 점이다. 전체 웹사이트는 단일 tar 파일로 패키징되며, 서버는 이를 메모리에 인덱싱해 디스크에 압축해제 없이 직접 서비스한다. 배포는 tarball 교체와 SIGHUP 신호 전송만으로 가능하며, 연결 끊김 없이 원자적 업데이트가 이뤄진다. eBPF 스크립팅은 사용자공간에서 실행되며, 커널 BPF 서브시스템이나 CAP_BPF 권한이 불필요하다. async-ebpf 런타임이 바이트코드를 네이티브 x86-64 기계어로 JIT 컴파일해 요청당 실행 비용을 최소화한다. 모든 네트워크와 디스크 I/O는 io_uring을 통해 처리되며, 단일 스레드 이벤트 루프로 동작한다. TLS 1.3, HTTP/2, Encrypted Client Hello, SNI 인증서 선택 등 최신 프로토콜을 기본 지원한다.