관리 메뉴

피터의 개발이야기

[Nginx] Nginx의 기본 이해와 주요 기능 본문

DevOps/nginx

[Nginx] Nginx의 기본 이해와 주요 기능

기록하는 백앤드개발자 2025. 3. 18. 06:28
반응형

ㅁ 들어가며

 Nginx를 블루그린 배포, 인증서 설치 등 일부 기능에 대해서만 사용하였다. 최근 Nginx 보안 검수와 캐싱기능을 이용한 서버 부하 감소 방법을 진행하면서 Nginx에 대해서 좀 더 자세히 배울 수 있었다. 부분적으로 알고 있던 지식을 정리하고자 한다. 이 글에서는 Nginx의 기본 이해와 주요 기능을 정리하였다.

 

ㅁ Nginx란 무엇인가?

  Nginx는 고성능의 오픈 소스 웹 서버 소프트웨어로, 정적 콘텐츠 제공 및 리버스 프록시, 로드 밸런싱 등 다양한 역할을 수행한다. 2004년 이고르 시쇼브(Igor Sysoev)에 의해 개발되었으며, 비동기 이벤트 기반 아키텍처를 통해 높은 처리량과 낮은 리소스 사용을 자랑한다.
Apache와 달리 스레드 기반이 아닌 비동기 방식으로 동작하여 대규모 트래픽(C10K 문제)을 효과적으로 처리할 수 있다.  Nginx는 Event-Driven 구조로 동작하기 때문에 한 개 또는 고정된 프로세스만 생성하여 사용하고, 비동기 방식으로 요청들을 Concurrency 하게 처리할 수 있다.

 

ㅁ Nginx의 구조

  • Master Process: 설정 파일을 읽고 유효성을 검사하며, Worker Process를 관리
  • Worker Process: 클라이언트 요청을 처리하는 역할을 담당하며, CPU 코어 수에 맞게 병렬로 실행
  • 비동기 이벤트 기반 모델: 요청을 효율적으로 분배하고 처리하여 동시 접속 성능을 극대화함.

 

ㅁ Nginx의 주요 기능

리버스 프록시 (Reverse Proxy)

 

로드 밸런싱 (Load Balancing)

  • 여러 서버에 트래픽을 분산하여 부하를 줄이고 성능과 가용성을 향상
  • 장애 발생 시 요청을 다른 서버로 리디렉션하는 장애 복구 기능 제공

 

정적 콘텐츠 제공

 

가상 호스팅 (Virtual Hosting)

 

SSL/TLS 암호화

 

캐싱

 

Keep Alive

  • 연결 상태를 유지하여 자원 효율성을 높이고 응답 성능 개선

 

ㅁ Nginx의 장점

  • 뛰어난 성능과 확장성.
  • 낮은 리소스 사용으로 대규모 트래픽 처리 가능.
  • 직관적인 설정 파일 구조로 간편한 관리.
  • 다양한 모듈과 플러그인 지원으로 유연한 확장성 제공

 

ㅁ NGINX 설정 파일의 구조와 사용법

[Nginx] NGINX 설정 파일의 구조와 사용법

 

 

마무리

 Nginx를 단편적으로 알고 있었는데, 이 글을 정리하면서 실무에서 Nginx를 효과적으로 활용하는 방법을 배울 수 있었다.  Nginx를 사용하여 웹 서비스를 안정적이고 보안성 있는 방식으로 구축할 수 있다. Nginx는 다양한 현대적인 웹 애플리케이션 환경에서 꼭 필요한 도구이며, 높은 성능과 안정성을 바탕으로 다양하게 활용할 수 있다.

 

함께 보면 좋은 사이트

AI가 알려주는 Nginx - 서버 관리자를 위한 필수 가이드

이 책은 Nginx에 대한 다양한 주제를 다루는 실무 지향적인 책이다. 이 책은 Nginx 소개와 주요 특징, 장점을 설명하며, Nginx의 설치와 설정 방법, 가상 호스팅 설정, 보안 설정, 로드 밸런싱, 성능 최적화, 로깅 및 모니터링, 그리고 고급 주제에 대해 다룬다.

[Nginx] Nginx 이해하기

[서버] Nginx 란?

 

반응형
Comments