NGINX는 웹 서비스, 역방향 프록싱, 캐싱, 부하 분산, 미디어 스트리밍 등을 위한 오픈 소스 소프트웨어입니다. 최대 성능과 안정성을 위해 설계된 웹 서버로 시작되었습니다. NGINX는 HTTP 서버 기능 외에도 이메일(IMAP, POP3, SMTP)용 프록시 서버 역할도 수행할 수 있으며 HTTP, TCP, UDP 서버의 역방향 프록시 및 부하 분산 장치 역할도 수행할 수 있습니다.
이고르 시소예프는 원래 C10K 문제를 해결하기 위해 NGINX를 작성했습니다. C10K 문제는 기존 웹 서버가 대량( 10K )의 동시 연결( C )을 처리하는 데 겪는 어려움을 설명하기 위해 1999년에 만들어진 용어입니다. NGINX는 이벤트 중심의 비동기 아키텍처를 기반으로, 고성능 환경 에서 서버가 작동하는 방식에 혁명을 일으키고 가장 빠른 웹 서버가 되었습니다.
2004년에 프로젝트를 오픈 소스로 공개하고 그 사용이 기하급수적으로 증가하는 것을 지켜본 후, Sysoev는 NGINX, Inc.를 공동 설립하여 NGINX의 지속적인 개발을 지원하고 기업 고객을 위해 설계된 추가 기능을 갖춘 상용 제품으로 NGINX Plus를 마케팅했습니다. NGINX, Inc.는 2019년에 F5, Inc. 에 편입되었습니다. 오늘날 NGINX와 NGINX Plus는 수십만 개의 동시 연결을 처리할 수 있으며, 다른 어떤 서버보다 인터넷의 가장 바쁜 사이트에 더 많은 서비스를 제공합니다.
NGINX의 목표는 가장 빠른 웹 서버를 만드는 것이었으며, 이러한 탁월함을 유지하는 것이 여전히 이 프로젝트의 핵심 목표 입니다. NGINX는 웹 서버 성능을 측정하는 벤치마크 에서 Apache와 다른 서버보다 지속적으로 우수한 성과를 보입니다. 그러나 NGINX가 처음 출시된 이래로 웹사이트는 간단한 HTML 페이지에서 동적이고 다면적인 콘텐츠로 확장되었습니다. NGINX도 이와 함께 성장하여 현재는 WebSocket, HTTP/2, gRPC, 여러 비디오 포맷(HDS, HLS, RTMP 등)의 스트리밍을 포함한 최신 웹의 모든 구성 요소를 지원합니다.
NGINX는 가장 빠른 웹 서버로 유명해졌지만, 확장 가능한 기본 아키텍처는 콘텐츠 제공을 넘어 다양한 웹 작업 에 이상적인 것으로 입증되었습니다. NGINX는 많은 양의 연결을 처리할 수 있으므로 일반적으로 리버스 프록시 및 로드 밸런서 로 사용되어 들어오는 트래픽을 관리하고 레거시 데이터베이스 서버에서 마이크로서비스에 이르기까지 느린 업스트림 서버로 분산합니다.
NGINX는 클라이언트와 두 번째 웹 서버 사이에 배치되어 SSL/TLS 종료자 또는 웹 가속기 역할을 하는 경우도 많습니다. NGINX는 중개자 역할을 하여 SSL/TLS 협상이나 성능 향상을 위해 콘텐츠 압축 및 캐싱 등 웹 서버 속도를 저하시킬 수 있는 작업을 효율적으로 처리합니다. Node.js에서 PHP까지 다양한 기술을 사용하여 구축된 동적 사이트는 일반적으로 NGINX를 콘텐츠 캐시와 역방향 프록시로 배포하여 애플리케이션 서버의 부하를 줄이고 기본 하드웨어를 최대한 효과적으로 활용 합니다.
NGINX Plus와 NGINX는 Dropbox, Netflix, Zynga 등 트래픽이 많은 웹사이트에서 사용하는 동급 최고의 웹 서버 및 애플리케이션 전송 솔루션입니다. 전 세계적으로 3억 5천만 개가 넘는 웹사이트가 NGINX Plus와 NGINX 오픈 소스를 통해 콘텐츠를 빠르고 안정적이며 안전하게 전송합니다.