Server Challenge 시리즈 - 1코어 서버에서 31만 명, 4코어에서 143만 동시 사용자 처리

4 hours ago 1

개발 유튜버 arjaythedev이 진행하는 오픈소스 웹서버 성능 챌린지 시리즈 다양한 프로그래밍 언어와 프레임워크로 동일한 API를 구현하고 동시 사용자 처리 성능을 비교 실제 DB 조회·쓰기와 JWT 인증 등을 포함한 웹 애플리케이션을 대상으로 측정 누구나 GitHub PR로 구현체를 제출할 수 있으며, 동일한 하드웨어에서 검증 후 리더보드에 결과 공개 1. $12 Server Challenge 1 vCPU, RAM 2GB 서버에서 최대 몇 명의 동시 사용자를 처리할 수 있는지 측정 SQLite 기반 소셜 피드 API 5개 구현 5만 사용자, 50만 게시물, 200만 좋아요로 구성된 DB 사용 SQLite WAL 모드 사용 및 쓰기 트랜잭션의 영속성 보장 필수 Nginx 사용 여부 선택 가능 현재 175개 구현체 측정, 1위 Rust(io_uring) 구현이 31만 명의 동시 사용자와 약 29,000 RPS 기록 리더보드 2. Multicore Server Challenge 8 vCPU, RAM 16GB 서버에서 멀티코어 활용 성능을 비교 PostgreSQL 18 기반 RealWorld Conduit(Medium 클론) API 19개 구현 게시물, 댓글, 팔로우, 로그인 등 실제 서비스에 가까운 작업을 수행 PostgreSQL과 웹서버가 동일한 하드웨어의 CPU 및 메모리를 공유 가상 사용자는 평균 7초마다 페이지를 탐색하며, 전체 요청의 약 5%가 쓰기 작업 현재 126개 구현체 측정, 1위 Rust(epoll) 구현이 23만 명의 동시 사용자와 약 59,000 RPS 기록 리더보드 3. Million Users Challenge 16 vCPU, RAM 32GB 서버 한 대에서 100만 동시 사용자 처리에 도전 PostgreSQL 18 기반 소셜 피드 API 5개 구현 DB는 별도 16코어 서버에서 실행하며 웹서버 자체의 처리 성능에 집중 Nginx 없이 HTTP 연결을 직접 처리해야 하며, 각 사용자가 keep-alive 연결을 유지 100만 사용자는 평균 약 42,000 RPS에 해당 16·8·4코어에서 각각 측정하며, 16코어는 100만 명까지 평가 현재 74개 구현체 측정, 16코어에서 다수의 구현이 100만 명에 도달했으며 4코어 최고 기록은 C#(epoll)의 143만 명 상위권 구현체들은 자체 HTTP 파서, epoll/io_uring 이벤트 루프, PostgreSQL wire protocol...

Read Entire Article




피플앤툴즈 네트워크
🛍 샵