WAS란 ?

이상수·2022년 11월 30일
0

Java, Spring

목록 보기
3/5

1. 웹 애플리케이션 서버(Web Application Server)란?

1). 웹 서버(Web)

  • 웹 브라우저의 클라이언트로 부터 HTTP 요청을 받아들이고, HTML 문서와 같은 웹 페이지에서 흔히 찾아 볼 수 있는 자료 콘텐츠에 따라 HTTP에 반응하는 프로그램
  • 클라이언트가 서버에 페이지 요청을 하면 요청을 받아 정적 컨텐츠(.html, .png, .css등)를 제공하는 서버
  • 클라이언트에서 요청이 들어올 때 가장 앞에서 요청에 대한 처리를 한다.
  • 클라이언트의 요청을 기다리고 요청에 대한 데이터를 만들어 응답(정적 데이터, html, png등)
    ex) Apache, nginx

2). 웹 애플리케이션 서버(Web Application Server)

  • 웹 서버 + 웹 컨테이너의 역할로, HTTP를 통해 사용자 컴퓨터나 장치에 애플리케이션을 수행해 주는 미들웨어(소프트웨어 엔진)이다.
  • WAS는 동적 서버 컨텐츠를 수행하는 것으로, 일반적인 Web과 구별되며 주로 DB조회나 로직 처리를 요구하는 동적 컨텐츠를 제공하기 위한 애플리케이션 서버
  • 컨테이너, 웹컨테이너, 서블릿 컨테이너 라고 부름
  • 여러 개의 트랜잭션 관리기능, 업무 처리하는 비지니스 로직 수행
  • Web.xml을 참조하여 http서블릿요청, http서블릿응답 객체 생성
    ex) Apache Tomcat, Websphere, Weblogic등

2. 관련 소프트웨어 정보

1). 컨테이너(Container)

  • JSP, servlet을 실행시킬 수 있는 소프트웨어

2). Tomcat

  • 서블릿 컨테이너 중 하나로, 사용자에게 JSP요청을 받으면 서블릿으로 바꾸어 실행
  • 웹 서버에서 요청한 동적 페이지를 읽어 프로그램을 실행
  • 그 결과를 다시 HTML로 재구성하여 웹 서버로 전달
  • 플랫폼에 제약이 없음

3). Servlet(서블릿)

  • 클라이언트의 요청을 처리하고, 그 결과를 반환하는 Servlet 클래스의 구현 규칙을 지킨 자바 웹 프로그래밍 기술
  • 자바를 사용하여 웹을 만들기 위해 필요한 기술
  • 자바 코드속에 HTML코드가 들어가 있는 형태
  • 클라이언트의 동적 컨텐츠 요청에 의하여 결과를 처리하여 다시 전공 해주는 역할
  • MVC 패턴에서 Controller로 이용
  • Http 프로토콜 서비스를 지원하는 HttpServlet 클래스를 상속받음

4). 서블릿 컨테이너

  • 서블릿을 관리해주는 컨테이너로써, 서블릿은 실제 행동을 수행하고 서블릿 컨테이너는 클라이언트의 요청을 받아주고 응답을 할 수 있게, 웹 서버와 소켓으로 통신

5). JSP(java Server Page)

  • Java 코드가 들어가 있는 HTML 코드
  • HTML소스코드 안에 자바소스코드가 들어가 있는 구조를 갖는 웹 애플레케이션 프로그래밍 기술
  • JSP는 WAS에 의하여 서블릿 클래스로 변환이됨

profile
Will be great Backend-developer

0개의 댓글