NGINX 란?
NGINX 는 웹 서비스, 리버스 프록시, 캐싱, 로드 밸런싱, 미디어 스트리밍 등을 위한 오픈 소스 소프트웨어입니다. 최고의 성능과 안정성을 위해 설계된 웹 서버로 시작되었습니다. NGINX는 HTTP 서버 기능 외에도 이메일(IMAP, POP3, SMTP)을 위한 프록시 서버, HTTP, TCP, UDP 서버를 위한 리버스 프록시 및 로드 밸런서 기능을 수행할 수 있습니다.
목차
1. 배경 스토리
2. 웹 서버로의 NGINX
3. 웹 서비스를 넘어선 NGINX
4. NGINX와 NGINX Plus는 어떤 기능을 제공하나요?
1. 배경 스토리
Igor Sysoev는 1999년 기존 웹 서버가 많은 수의 동시 연결(10K)을 처리하는 데 어려움을 겪었던 것을 설명하기 위해 만든 용어인 C10K 문제를 해결하기 위해 NGINX를 처음 개발했습니다. 이벤트 중심의 비동기식 아키텍처로 고성능 환경에서 서버가 작동하는 방식을 혁신한 NGINX는 현존하는 가장 빠른 웹 서버가 되었습니다.
2004년에 이 프로젝트를 오픈 소스화하고 그 사용이 기하급수적으로 증가하는 것을 본 후 Sysoev는 NGINX의 지속적인 개발을 지원하고 기업 고객을 위해 설계된 추가 기능을 갖춘 상용 제품인 NGINX Plus를 출시하기 위해 NGINX를 공동 설립했습니다. NGINX는 2019년에 F5의 일부가 되었습니다. 오늘날 NGINX는 수십만 개의 동시 연결을 처리할 수 있으며, 다른 어떤 서버보다 인터넷에서 가장 바쁜 사이트를 더 많이 지원합니다.
2. 웹 서버로의 NGINX
가장 빠른 웹 서버를 만드는 것이 NGINX의 목표였으며, 이러한 우수성을 유지하는 것이 여전히 프로젝트의 핵심 목표입니다. NGINX는 웹 서버 성능을 측정하는 벤치마크에서 Apache 및 기타 서버를 능가하고 있습니다. 그러나 NGINX가 처음 출시된 이후 웹사이트는 단순한 HTML 페이지에서 동적이고 다각적인 콘텐츠로 확장되었습니다. NGINX도 이와 함께 성장해 왔으며, 이제 WebSocket, HTTP/2, gRPC, 여러 비디오 형식(HDS, HLS, RTMP 등)의 스트리밍 등 최신 웹의 모든 구성 요소를 지원합니다.
3. 웹 서비스를 넘어선 NGINX
NGINX는 가장 빠른 웹 서버로 유명해졌지만, 확장 가능한 기본 아키텍처는 콘텐츠 제공 외에도 많은 웹 작업에 이상적인 것으로 입증되었습니다. 대량의 연결을 처리할 수 있기 때문에 NGINX는 일반적으로 레거시 데이터베이스 서버에서 마이크로서비스에 이르기까지 들어오는 트래픽을 관리하고 속도가 느린 업스트림 서버로 분산하는 리버스 프록시 및 로드 밸런서로 사용됩니다.
또한 NGINX는 클라이언트와 두 번째 웹 서버 사이에 배치되어 SSL/TLS Terminator 또는 Web Accelerator 역할을 하는 경우가 많습니다. 중개자 역할을 하는 NGINX는 SSL/TLS 협상 또는 성능 향상을 위한 콘텐츠 압축 및 캐싱과 같이 웹 서버의 속도를 저하시킬 수 있는 작업을 효과적으로 처리합니다. Node.js에서 PHP에 이르는 모든 것을 사용하여 구축된 동적 사이트는 일반적으로 애플리케이션 서버의 부하를 줄이고 기본 하드웨어를 가장 효과적으로 활용하기 위해 콘텐츠 캐시 및 리버스 프록시로 NGINX를 배포합니다.
4. NGINX와 NGINX Plus는 어떤 기능을 제공하나요?
NGINX Plus와 NGINX는 Dropbox, Netflix, Zynga 등 트래픽이 많은 웹사이트가 사용하는 best-in-class web server 및 application delivery solutions 입니다. 전 세계 3억 5천만 개 이상의 웹사이트가 NGINX Plus와 NGINX를 사용하여 콘텐츠를 빠르고 안정적이며 안전하게 전송하고 있습니다.
- 클라우드 네이티브 아키텍처용으로 설계된 Software-Only All-In-On Load Balancer, Web Server, API Gateway, Reverse Proxy인 NGINX는 IT 인프라 및 애플리케이션 현대화 작업을 가속화할 수 있도록 지원합니다. NGINX Plus는 강력한 안정성과 보안을 제공하는 엔터프라이즈급 기능을 제공합니다.
- NGINX는 다기능 도구입니다. NGINX를 사용하면, 로드 밸런서, 리버스 프록시, 콘텐츠 캐시, 웹 서버와 동일한 도구를 사용할 수 있으므로 조직에서 유지 관리해야 하는 도구 및 구성의 양을 최소화할 수 있습니다. NGINX는 문서와 다양한 전자책, 웨비나, 동영상을 제공하여 바로 사용할 수 있도록 도와줍니다. NGINX Plus에는 신속한 고객 지원 서비스가 포함되어 있어 NGINX 또는 NGINX Plus를 사용하는 스택의 모든 부분을 쉽게 진단하는 데 도움을 받을 수 있습니다.
- NGINX는 계속 진화하고 있습니다. 지난 10년 동안 NGINX는 최신 웹 개발의 최전선에 서 왔으며, HTTP/2에서 마이크로서비스 지원에 이르기까지 모든 분야를 선도하는 데 기여해 왔습니다. 웹 애플리케이션의 개발과 전송이 계속 발전함에 따라 NGINX Plus는 NGINX에 맞게 사용자 정의된 JavaScript 구현을 사용한 구성 지원부터 동적 모듈 지원까지 완벽한 애플리케이션 전송을 가능하게 하는 기능을 계속 추가하고 있습니다. NGINX Plus를 사용하면 최첨단 웹 성능을 유지할 수 있습니다.
NGINX Plus를 직접 사용해 보시려면 30일 무료 평가판을 신청하거나 NGINX STORE에 연락하여 논의하십시오.
NGINX에 대한 최신 정보들을 빠르게 전달받고 싶으시다면, 아래의 뉴스레터를 구독하세요.