치악산 복숭아

nginx 간단하게 정리하기 본문

BE

nginx 간단하게 정리하기

Juliie 2025. 1. 23. 22:15

https 설정을 위해 이것저것 찾아보다가 nginx에 대해 새롭게 알게 된 것을 잊어버리기 전에 정리해본다. 🤓

 

 nginx란?

공식 홈페이지에서는 이렇게 소개하고 있다.

nginx는 HTTP 웹 서버, 리버스 프록시, 콘텐츠 캐시, 로드 밸런서, TCP/UDP 프록시 서버, 메일 프록시 서버입니다.

 

    • HTTP 웹 서버: HTTP 요청을 받아 웹 페이지를 클라이언트(브라우저)에게 제공함
      •  클라이언트 🧑‍💻 <(상품 목록이랑 가격 정보 좀 주세요 )         (넵! )> 🤖 웹 서버 
    • 리버스 프록시: 클라이언트와 백엔드 서버의 중간에 위치. 클라이언트의 요청을 받아 백엔드 서버로 전달하고, 백엔드 서버의 응답을 클라이언트로 돌려줌
      • 보안 강화와 로드 밸런싱을 위해 사용 됨, 보안 강화, 캐싱, SSL 종료 등
        • 당연한 얘기(?)지만 서버 1대 + 리버스 프록시만 쓰면 로드 밸런싱 효과는 없음, 이 경우엔 보안 강화, 캐싱, SSL 종료 등의 기능을 제공하는 역할을 수행
        • 클라이언트의 요청이 역방향 프록시에 도달하면, 역방향 프록시가 백엔드 서버의 실제 IP 주소를 숨기고 요청을 처리. -> 이클라이언트는 백엔드 서버의 실제 IP 주소를 알 수 없음. -> 공격자가 서버의 실제 IP 주소를 알 수 없어서 디도스 공격 등의 위험으로부터 보호할 수 있음
        • 프록시 / 리버스 프록시를 쉽게 설명해주는 영상
          • 위 영상의 댓글에 The forward proxy and reverse proxy are two very confusing names.You just need to know that, from your perspective, forward proxy is outbound proxy , and reverse proxy is inbound proxy. 라는 내용이 있는데, 이해에 도움이 됐다!
    •  콘텐츠 캐시: 자주 요청되는 데이터를 임시 저장소에 보관하여 빠르게 제공
      • 서버 부담을 줄이고 응답 시간을 단축할 수 있음
      • 개선 정도의 측정은 캐시 히트 비율 (Cache Hit Ratio)로 가능 -> 캐시에서 요청된 데이터를 성공적으로 제공한 비율, 서버 부하와 반비례 관계
    • 로드 밸런서: 여러 서버에 트래픽을 분산시켜 서버 과부하를 방지, 서버 충돌 or 지연 시간을 최소화 하는 등의 성능 최적화
  •  
  •  TCP/UDP 프록시 서버:  클라이언트와 서버 간의 TCP/UDP 통신을 중계하는 서버
    • 네트워크 트래픽 중계, 보안 강화 및 성능 향상을 위해 사용
    • NAT, 비디오 스트리밍, DB 연결 ...
  •  메일 프록시 서버: 이메일 전송과 수신을 중계하는 서버
    • 이메일 보안과 스팸 필터링을 강화. 캐싱 등등
Comments