NginX - Proxy Server (덜중요)하다말었서

2022. 8. 10. 15:43카테고리 없음

NginX - Proxy Server

 

Nginx?

Nginx는 가볍고 높은 성능을 보이는 오픈소스 웹 서버 소프트웨어입니다. 이전에 학습한 Tomcat과 Jetty는 자바 서블릿 컨테이너 혹은 웹 애플리케이션 서버였다면, Nginx는 웹 서버로 클라이언트에게 정적 리소스를 빠르게 응답하기 위한 웹 서버로 사용할 수 있습니다. Nginx는 다음과 같은 특징을 가지고 있습니다.

  • Nginx는 트래픽이 많은 웹 사이트의 확장성을 위해 개발된 고성능 웹 서버 입니다.
  • 비동기 이벤트 기반으로 적은 자원으로 높은 성능과, 높은 동시성을 위해 개발되었습니다.
  • 다수의 클라이언트 연결효율적으로 처리할 수 있습니다.
  • 클라이언트와 서버 사이에 존재하는 리버스 프록시 서버로 사용할 수 있습니다.
  • Nginx를 클라이언트와 서버 사이에 배치하여 무중단 배포를 할 수 있습니다.

Spring Boot와 Nginx 연동하기

그동안 클라이언트는 8080포트를 사용하는 스프링부트로 요청을 보내고 응답을 받았습니다. 이 구조에서 스프링부트 앞에 Nginx로 리버스 프록시 서버를 구축하여, 아래 그림처럼 클라이언트와 서버가 Nginx를 통해서 소통할 수 있도록 만들겠습니다.


1. Nginx 설치

먼저 Nginx를 설치합니다. 사용하는 OS를 확인하고 설치를 진행합니다.

Mac OS 사용자

터미널에 명령어를 입력합니다. 설치 진행이 되지 않는다면 brew update를 진행해주세요.

1
$ brew install nginx

Windows 사용자

Nginx 다운로드 사이트에서 Stable 버전을 다운로드합니다.

다운로드한 압축 폴더를 원하는 경로로 이동한 후 압축을 해제합니다. 폴더 내에 Nginx의 실행파일과 Nginx 설정 폴더가 있으니 경로를 기억해야합니다.