티스토리 뷰

CS/스프링

Web Server와 WAS의 차이

파이 2024. 10. 1. 21:01
1. 웹 서버(Web Server)
HTTP 프로토콜을 기반으로 동작하는 서버로,
웹 브라우저로부터 HTTP 요청을 받아 HTML, CSS, JS와 같은 정적 컨텐츠를 제공하는 프로그램입니다.

 

여기서 정적 컨텐츠

서버에 저장되어 있으며 모든 사용자에게 동일하게 전달되는 파일을 모두 말합니다.

예) HTML, CSS, JS, 이미지, 영상 등 

 

대표적인 웹 서버

  •  Nginx
  • Apache

 

 

 

 

2. 웹 어플리케이션 서버 (WAS)
HTTP  프로토콜을 기반으로 동작하고 웹 서버 기능을 포함하여
동적 리소스도 제공할 수 있습니다.

 

동적 컨텐츠

어떤 클라이언트가 언제, 어디서, 어떻게 서버에 요청했는지에 따라 각기 다른 결과를 보여주는 것을 의미합니다.


대표적인 WAS

  • Tomcat
  • Jetty
  • Undertow

 

문제점

 

WAS를 사용함으로서 정적 컨텐츠 뿐만 아닌 동적컨텐츠도 제공할 수 있지만 

WAS만을 사용해서 구성된다면 생길 수 있는 문제점이 있습니다.

 

  • WAS가 너무 많은 역할을 담당하여 서버 과부화가 될 수 있다.
  • 값비싼 애플리케이션 로직이 정적 리소스 때문에 수행이 어려울 수 있다.
  • WAS 장애 시 오류화면 제공 불가능

 

 

해결법

 

 

 

웹 서버와 웹 애플리케이션 서버를 같이 사용하는 것입니다.

 

같이 사용함으로서 역활을 분담하여 WAS에 생기는 부담을 줄일 수 있습니다.

정적 리소스는 웹 서버, 동적 리소스는 웹 애플리케이션 서버가 담당을 합니다.

 

장점

 

  • 효율적인 리소스 관리가 가능해집니다.
    • 정적 리소스가 많이 사용되면 Web 서버를 증설
    • 동적 리소스가 많이 사용되면 WAS 서버를 증설
  • WAS, DB 장애 시 Web Server에서 서비스 오류 화면 제공합니다.

'CS > 스프링' 카테고리의 다른 글

서블릿(Servlet) 이란?  (0) 2024.08.02
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함