요르딩딩

[Spring 분석] Web Server 와 WAS 본문

[Web]/[Spring]

[Spring 분석] Web Server 와 WAS

요르딩딩 2021. 2. 16. 10:24
728x90
반응형

Static Page
1.  웹서버는 파일경로 이름을 받아 경로와 일치하는 file contents를 반환합니다.
2. 항상 동일한 페이지를 반환합니다. (이미지, html, css, javascript파일과 같이 컴퓨터에 저장되어 있는 파일들)
Dynamic Page
1. 인자의 내용에 맞게 동적인 contents를 반환한다.
2. 웹서버에 의해서 실행되는 프로그램을 통해서 만들어진 결과물을 was위에서 돌아가는 java program
1. Web server(웹서버)
1. HTTP 프로토콜을 기반으로 하여 클라이언트(웹 브라우저 또는 웹 크롤러)의 요청을 서비스 하는 기능을 담당합니다.
2. 클라이언트의 요청(Request)을 WAS에 보내고, WAS가 처리한 결과를 클라이언트에게 전달(응답, Response)합니다.
2. WAS
1. DB 조회나 다양한 로직 처리를 요구하는 동적인 컨텐츠를 제공하기 위해 만들어진 Application Server입니다.
2. “웹 컨테이너(Web Container)” 혹은 “서블릿 컨테이너(Servlet Container)”라고도 불립니다.
3. WAS = Web Server + Web Container
4. Web Server 기능들을 구조적으로 분리하여 처리하고자하는 목적으로 제시되어, 분산 트랜잭션, 보안, 메시징, 쓰레드 처리 등
    의 기능을 처리하는 분산 환경에서 사용
5. 주로 DB 서버와 같이 수행됩니다.

(+) 웹서버 vs was 분리하여 사용하는 이유?
1. 기능을 분리하여 서버 부하 방지 :  WAS는 DB 조회나 다양한 로직을 처리하느라 바쁘기 때문에 단순한 정적 컨텐츠는 Web       Server에서  빠르게 클라이언트에 제공하는 것이 좋다.
2. 물리적으로 분리하여 보안 강화 : SSL에 대한 암복호화 처리에 Web Server를 사용합니다.
3. 여러 대의 WAS를 연결 가능 : Load Balancing을 위해서 Web Server를 사용합니다.
4. 여러 웹 어플리케이션 서비스 가능 : 예를 들어, 하나의 서버에서 PHP Application과 Java Application을 함께 사용하는 경우

 

  • 즉, 자원 이용의 효율성 및 장애 극복, 배포 및 유지보수의 편의성 을 위해 Web Server와 WAS를 분리한다.
  • Web Server를 WAS 앞에 두고 필요한 WAS들을 Web Server에 플러그인 형태로 설정하면 더욱 효율적인 분산 처리가 가능하다.

참고

gmlwjd9405.github.io/2018/10/27/webserver-vs-was.html

728x90
반응형
Comments