웹 서버(Web Server)와 WAS(Web Application Server)의 차이
웹 서비스 구조에서 웹 서버와 WAS는 각각 다른 역할을 담당하며 함께 동작하는 경우가 많습니다.
1. 웹 서버(Web Server)
웹 서버는 정적(Static) 콘텐츠를 처리하고 HTTP 요청을 전달하는 역할을 합니다.
주요 기능
- 정적 리소스 제공(HTML, CSS, JS, 이미지 등)
- HTTP 요청/응답 처리
- 리버스 프록시 역할
- SSL/TLS 처리
- 로드밸런싱
대표적인 웹 서버
- Nginx
- Apache HTTP Server
예시
브라우저가 /logo.png를 요청하면 웹 서버가 바로 파일을 찾아 응답합니다.
Client -> Web Server -> Static File 응답
2. WAS(Web Application Server)
WAS는 동적(Dynamic) 로직을 처리하는 애플리케이션 실행 환경입니다.
주요 기능
- 비즈니스 로직 실행
- DB 연동
- 세션 관리
- 트랜잭션 처리
- API 처리
대표적인 WAS
- Apache Tomcat
- Spring Boot
- WildFly
예시
사용자가 /api/order 요청을 보내면 WAS에서 로직을 수행합니다.
Client -> Web Server -> WAS -> DB -> 결과 반환
3. 웹 서버 + WAS 구조
실무에서는 보통 웹 서버와 WAS를 분리해서 사용합니다.
구조 예시
Client -> Web Server(Nginx) -> WAS(Tomcat / Spring Boot) -> Database
이렇게 분리하는 이유
1. 정적 리소스 처리 성능 향상
2. WAS 부하 감소
3. 보안 계층 분리
4. 로드밸런싱 및 확장 용이
예를 들어 웹 서버는 정적 파일 처리와 SSL 종료, WAS는 비즈니스 로직 처리에 집중하게 됩니다.
4. 핵심 차이 정리
| 구분 | Web Server | WAS |
| 역할 | 정적 리소스 제공 | 동적 로직 처리 |
| 처리 대상 | HTML, CSS, JS, 이미지 | API, 비즈니스 로직 |
| 주요 기능 | HTTP 처리, 프록시, SSL | 로직 실행, DB 연동 |
| 예시 | Nginx, Apache | Tomcat, Spring Boot |
웹 서버와 WAS의 보안 관점 차이
웹 서버와 WAS를 분리하는 이유 중 하나는 보안 계층을 분리하기 위함입니다.
일반적으로 웹 서버는 외부 인터넷과 직접 통신하고, WAS는 내부망에서만 동작하도록 구성합니다.
1. 웹 서버의 보안 역할
웹 서버는 외부 요청을 처음으로 받는 보안 게이트웨이 역할을 합니다.
주요 보안 기능
① SSL/TLS 처리(HTTPS)
웹 서버에서 SSL 인증서를 적용하여 HTTPS 통신을 처리합니다.
Client -> HTTPS -> Web Server -> HTTP -> WAS
이렇게 하면 WAS는 내부에서 평문 HTTP로 통신해도 외부에서는 HTTPS가 유지됩니다.
② 리버스 프록시로 내부 서버 보호
웹 서버는 리버스 프록시 역할을 하면서 내부 WAS를 숨깁니다.
구조
Client -> Web Server -> WAS(내부망)
이 구조에서는 외부에서 WAS IP에 직접 접근 불가, 공격 표면 감소 등의 이점이 있습니다.
③ 요청 필터링 및 보안 정책 적용
웹 서버에서 다음과 같은 보안 정책을 적용할 수 있습니다.
- IP 차단
- Rate Limiting
- User-Agent 필터링
- 요청 크기 제한
2. WAS의 보안 역할
WAS는 애플리케이션 레벨 보안을 담당합니다.
주요 보안 기능
① 인증(Authentication)
사용자가 누구인지 확인
예
- 로그인
- JWT 인증
- OAuth
② 인가(Authorization)
사용자가 어떤 권한을 가지고 있는지 검사
예
- 관리자만 접근 가능한 API
③ 애플리케이션 보안
코드 레벨에서 공격 방어
예
- SQL Injection 방어
- Cross-Site Scripting 방어
- Cross-Site Request Forgery 방어
3. 보안 관점에서 역할 분리
| 구분 | Web Server | WAS |
| 위치 | 외부망 | 내부망 |
| 역할 | 보안 게이트웨이 | 애플리케이션 보안 |
| 보안 기능 | SSL, IP 차단, 요청 필터링 | 인증, 권한검사, 로직 보안 |
| 공격 대응 | 트래픽 차단 | 취약점 방어 |