개발

부스트코스/웹 프로그래밍(풀스택)/[1-7]WAS 강의 스크립트 정

soohkang 2021. 7. 6. 21:09
728x90

클라이언트/서버 구조

  • 클라이언트(Client)는 서비스(Service)를 제공하는 서버(Server)에게 정보를 요청하여 응답 받은 결과를 사용한다.

 

DBMS(database management system)

  • 다수의 사용자들이 데이터베이스 내의 데이터를 접근할 수 있도록 해주는 소프트웨어

 

미들웨어(MiddleWare)

  • 클라이언트 쪽에 비즈니스 로직이 많을 경우, 클라이언트 관리(배포 등)로 인해 비용이 많이 발생하는 문제가 발생.
  • 비즈니스 로직을 클라이언트와 DBMS사이의 미들웨어 서버에서 동작하도록 함으로써 클라이언트는 입력과 출력만 담당하도록 함

 

WAS(Web Application Server)

  • WAS는 일종의 미들웨어로 웹 클라이언트(보통 웹 브라우저)의 요청 중 보통 웹 애플리케이션이 동작하도록 지원하는 목적을 가진다.

 

WAS의 주요 기능

  1. 프로그램 실행 환경과 데이터베이스 접속 기능을 제공한다.
  2. 여러개의 트랜잭션 관리
  3. 업무를 처리하는 비즈니스 로직을 수행한다.

 

톰캣이라는 WAS만 설치, 톰캣이 가지고 있는 웹 서버가 충분히 기능을 하고 있기때문에 아파치를 따로 설치하지 않고 실습한다.

 

웹서버 vs WAS

  • WAS도 보통 자체적으로 웹 서버 기능을 내장하고 있다.
  • 현재는 WAS가 가지고 있는 웹 서버도 정적인 컨첸트를 처리하는데 있어서 성능상 큰 차이가 없다.
  • 규모가 커질수록 웹 서버와 WAS를 분리한다. 그 목적은 장애 극복 기능(failover)인 경우가 많다.