본문 바로가기
Web

Nginx란 ?

by 준토리73 2024. 1. 11.

Nginx는 여러 웹 서버들 중의 하나로, Nginx에 대해 알아보자! 

 

🌱 Nginx를 알아보기 전에 알아둘 것 네 가지! 

 

1. 클라이언트

2. 웹 서버 

클라이언트의 요청에 따라 HTML, CSS, JS, 이미지 파일과 같은 정적 파일을 응답하여 제공하는 소프트웨어 

웹 서버는 HTTP 프로토콜을 사용하여 클라이언트와 통신 

3. WAS 

WAS는 클라이언트 요청에 대해 동적인 처리를 담당하는 영역. ex) 로그인, 회원가입

데이터베이스 연동, 트랜잭션 관리, 보안, 로깅 등의 기능 제공 

웹 어플리케이션의 안정성과 성능 향상. 

* 대표적인 WAS ) Tomcat, JBoss, WEBLogin, WebSpere

 

4. DB 

요청) 클라이언트 → 웹 서버 WAS DB

응답) DB WAS 웹 서버   클라이언트

 

 

🌱웹 서버를 쓰는 이유? 

  • WAS의 부담을 덜어주기 위해 

  WAS는 로그인, 회원가입, 개인정보 수정 등 동적 작업처리 

  ↔ 웹 서버 : HTML, CSS, JS, 이미지 등 정적인 파일을 클라이언트에게 전달하는 역할 

 

  • 보안기능 제공함으로써 웹 페이지에 대한 접근 제어 

  SSL/TLS 프로토콜을 사용하여 데이터를 암호화, 액세스 제어, 웹 방화벽 등의 보안기능 제공하여 웹 사이트 보호 

 

  • 높은 성능 제공 

  웹 서버는 대부분 비동기 처리방식 사용 → 높은 성능 제공 

  Nginx, Apache 등의 웹 서버는 이벤트기반, 멀티 프로세싱, 스레드 풀 등의 기술을 사용하여 수천 대의 클라이언트 요청을 처리 할수 있음 

 

 

📌Nginx를 사용하는 이유? 

  • 높은 성능과 적은 메모리 사용 
  •   비동기 I/O 처리방식 → 빠른 응답 
  •   적은 메모리 → 서버 운용비용 절감 

 

  • 리버스 프록시 사용이 가능 

*프록시(Proxy) : "대리". 

인터넷 접속시 보안상의 문제로 직접 통신을 못하는 경우, 그 사이 중계기로서 대리로 통신 수행하는 기능 

 

- 포워드 프록시 : 클라이언트와 인터넷 그 사이의 영역 

  •  IP주소가 웹 서버에 노출X (보안 강화) 
  • 접근제어 수행 : 특정 IP 주소, 도메인 또는 URL에 대한 접근 제한 
  • 미디어 스트리밍 지원 : 미디어 파일을 캐시하고 클라이언트에게 빠르게 제공 

- 리버스 프록시 : 인터넷과 백엔드 사이의 서버영역 

  • 로드밸런싱 : WAS로 사용하고 있는 서버가 여러대 있을 때, 각각 도메인에 따라 다른 서버로 전달하여 웹 서버로 길을 분배할수 있음 
  • 캐싱 서버로 이용 가능 
  • 보안효과 

  •  SSL 지원 (Secure Sockets Layer)

웹 사이트와 사용자 간의 통신을 암호화하고 보안을 유지하는 데 사용되는 프로토콜

SSL은 HTTPS로 알려진 보안 HTTP 프로토콜의 기반 기술 

 

* HTTPS는 HTTP 프로토콜의 암호화된 버전

SSL 프로토콜을 사용하여 웹 서버- 클라이언트간에 보안 연결을 설정하고, 

SSL 인증서를 사용하여 서버의 신원을 인증 

 

Nginx는 HTTPS 인증서를 제공해줄 수 있음.

 

  • 데이터 압축

클라이언트가 보내는 요청이 Text 일 경우 gzip을 사용하여 해당 데이터 압축 가능

 

  • 비동기 처리

이벤트 루프 방식을 사용하여 높은 성능 제공 → 이를 통해 동시에 여러 요 청이 들어왔을 때도 많은 트래픽 동시 처리하여 빠른 응답시간 보장 

 

 

 

 

참고) https://blog.naver.com/gi_balja/223028077537

 

Nginx란 무엇인가?

Nginx(엔진엑스)는 높은 성능과 안정성 그리고 현재 가장 많이 사용되고 있는 웹 서버입니다. Apache(아...

blog.naver.com

 

 

댓글