웹 서버와 애플리케이션 서버는 자주 함께 등장하지만, 역할과 처리 범위가 다르다.
서로 다른 일을 하지만, 실제 서비스에서는 두 서버가 협력해 하나의 완성된 웹 서비스를 제공한다.

Static Data Store에서 해당 파일을 보내 Static Data Response로 클라이언트에게 응답Servlet Request)로 전달Web Container를 통해 처리Servlet Response 형태로 웹 서버에게 전달Http Response 형태로 클라이언트에게 반환간단한 흐름도
[사용자]
↓
[웹 서버: Nginx]
↓
[애플리케이션 서버: Spring Boot / Django]
↓
[데이터베이스]
웹 서버는 정적 콘텐츠를 처리하는 서버를 말한다.
| 항목 | 설명 |
|---|---|
| 주 역할 | 정적 리소스 제공 |
| 응답 속도 | 빠름 (단순 파일 응답) |
| 주로 사용하는 프로토콜 | HTTP / HTTPS |
| 예시 상황 | 사용자가 웹사이트 접속 시 HTML 페이지 반환 |
동적 콘텐츠를 처리하는 서버를 말한다.
| 항목 | 설명 |
|---|---|
| 주 역할 | 동적 로직 처리 (비즈니스 로직 수행) |
| 응답 속도 | 상대적으로 느림 (코드 실행, DB 접근 등) |
| 예시 상황 | 로그인 처리, 주문 요청, 데이터 연산 등 |
즉, 웹 서버는 파일을 전달하는 역할이며 애플리케이션 서버는 코드를 실행해 데이터를 생성하고 처리하는 역할을 한다.
두 서버는 함께 동작하며 웹 서버가 게이트웨이, 애플리케이션 서버가 핵심 로직을 처리하는 백엔드 역할을 맡는다.