<aside>
💡
</aside>
1. Nginx란 무엇일까?

Nginx는 HTTP 서버로 분류되지만, 실제로는 네트워크 요청을 받아 해석하고 제어하고 전달하는 트래픽 처리 엔진에 가깝다.
Nginx는 단일 소프트웨어로 다음과 같은 기능을 동시에 수행할 수 있다.
- HTTP/HTTPS 요청 수신
- 정적 파일 직접 제공
- 애플리케이션 서버로 요청 전달
- TLS(SSL) 암호화 처리
- 연결 수명 관리
- 트래픽 분산 및 제한
즉, “클라이언트와 서버 사이에서 일어나는 모든 HTTP 통신의 관문” 역할이다.
2. Nginx가 주로 쓰이는 역할 4가지
2-1. 웹 서버(Web Server)
- HTML/CSS/JS/이미지 같은 정적 파일을 직접 서빙
- 앱 서버(Spring, FastAPI, Node 등)를 거치지 않아도 돼서 부하가 감소하고 응답이 빠름
정적 파일 처리에 강한 이유:
- 파일 I/O와 네트워크 전송을 효율적으로 처리하도록 설계
- 커널 레벨 최적화(예: sendfile)를 활용하는 구성도 가능