개발자답게
WS(Web Server)와 WAS(Web Application Server)
개발자 카페
2022. 10. 27. 16:06
728x90
WS(Web Server)와 WAS(Web Application Server) 차이
WS(Web Server)
- Static Pages(정적페이지)
- 웹 브라우저 클라이언트로부터 HTTP 요청을 받아 정적인 컨텐츠(.html .jpeg .css 등)를 제공하는 컴퓨터 프로그램
- HTTP 프로토콜을 기반으로 하여 클라이언트(웹 브라우저 또는 웹 크롤러)의 요청을 서비스 하는 기능을 담당한다.
- Ex) Apache Server, Nginx, IIS(Windows 전용 Web 서버) 등
WAS(Web Application Server)
- Dynamic Pages(동적페이지) but 정적페이지 처리도 가능
- DB 조회나 다양한 로직 처리를 요구하는 동적인 컨텐츠를 제공하기 위해 만들어진 Application Server
- HTTP를 통해 컴퓨터나 장치에 애플리케이션을 수행해주는 미들웨어(소프트웨어 엔진)이다.
- Ex) Tomcat, Jeus, JBOSS 등

WS, WAS 분리하는 이유?
그냥 WAS 로 처리하면 안되나요?
- 트래픽이 많을경우 정적데이터와 동적데이터를 전부 WAS에서 처리하면 서버부하가 발생할수있다.
- 물리적으로 앞단에 WS, 뒷단에 WAS를 두어(WS와 WAS 사이 리버스 프록시 서버를 둔다) 보안을 강화시킬수있다.
- 로드밸런싱(WAS가 여러대일경우 역할을 분배해 부하방지)역할 수행가능
- WS에서 WAS로 Health check(서버에 주기적으로 http요청을 통해 상태확인)를 통해 서버상태 확인
- 리버스 프록시 서버의 캐싱기능으로 WS에서 WAS로 요청했었던 데이터는 다시 WAS에 요청하지 않도록 하여 빠른서비스 제공
728x90