본문 바로가기
JAVA/Servlet&JSP

[ JSP ] WAB/WAS / 웹(서버/어플리케이션/컨테이너)

by haeun 하은 2022. 1. 18.
728x90

WAB Server 구분

 

Static Pages(정적 웹)

▶ 컴퓨터에 저장되어 있는 파일 (ex) image, html, css, javascript 파일

Web Server에서 제공하고 , 요청을 받아 알맞는 파일로 반환하고 항상 동일한 페이지를 반환한다.

정적인 컨텐츠 

 

Dynamic Pages(동적 웹)

 

 웹 서버에 의해서 실행되는 프로그램을 통해서 만들어진 결과물

(ex) Servlet: WAS 위에서 돌아가는 Java Program,개발자는 Servlet에 doGet()을 구현한다

요청을 받아 인자의 내용에 맞게 동적인 contents를 반환한다.

데이터베이스, 서버 내 로직 등을 활용해 만들어진 컨텐츠를 반환한다.

웹 어플리케이션 서버에서 제공한다.

 

클라이언트(client) 🔽

더보기

✔ 네트워크를 통하여서버라는 다른컴퓨터 시스템상의 원격 서비스에 접속할 수 있는응용 프로그램이나 서비스

[ 클라이언트-서버구조 ] 에서 서버에서 그 서버가 제공하는 서비스를 요청하고, 

또는 서비스 요청을 위해 필요 인자를 서버가 원하는 방식에 맞게 제공하며, 

서버로부터 반환되는 응답에 사용자에게 적절한 방식으로 표현하는 기능을 가진 프로그램이나 시스템이다.

 

 

Web Sever / WAS (Web Application Server) /  Web Container

 

 

 

 

Web Server (웹 서버)🔽

더보기

웹 서버  : 웹 브라우저와 같은 클라이언트로부터 HTTP 요청을 받아들이고,

                  HTML 문서와 같은 웹 페이지를 반환하는 컴퓨터 프로그램

웹 서버 (하드웨어) : 위에 언급한 기능을 제공하는 컴퓨터 프로그램을 실행하는 컴퓨터

HTTP 프로토콜을 기반으로 웹 브라우저(클라이언트)에서 요청하는

   Static contents {HTML 문서나 오브젝트(이미지 파일 등)}을 전송해주는 서비스

(Ex. Apache Server, Nignx, ...)

 

클라이언트에 다른 소프트웨어의 설치 없이

   대부분의 운영체제에 포함된 웹 브라우저만으로 서비스를 제공할 수 있다는 장점이 있다.

 

정적인 컨텐츠 제공 - WAS를 거치지 않고, 바로 요청한 컨텐츠를 제공할 수 있다.

동적인 컨텐츠 제공을 위한 전달요청을 WAS에 보내고, WAS가 처리한 결과를 클라이언트에게 전달한다.

 

 

WAS (Web Application Server) 웹 어플리케이션 서버

(한국에서는 일반적으로 "WAS" 또는 "WAS S/W"로 통칭하고 있으며 공공기관에서는 "웹 응용 서버"로 사용되고,

영어권에서는 "Application Server" (약자 AS)로 불린다.)

 

웹 애플리케이션과 서버 환경을 만들어 동작시키는 기능을 제공하는 소프트웨어 프레임워크

다양한 서버 내 알고리즘, 업무를 처리하는 비즈니스 로직 수행, DB 조회 ,여러 개의 트랜잭션을 관리 등 클라이언트 요청에 따라 동적인 컨텐츠를 제공하는 서버, 프로그램

✔ 동적 서버 콘텐츠 

- HTTP 프로토콜을 기반으로 하여 클라이언트의 요청에 따라 구현된 비즈니스 로직을 통해 

  동적으로 만들어진 컨텐츠를 반환  (Ex. Tomcat, JBoss, Jeus, ...)

- 데이터베이스 접속 기능, 여러 개의 트랜잭션 관리 등 수행

✔ 프로그램 실행 환경과 데이터베이스 접속 기능을 제공한다.

 

 

Web Container(웹 컨테이너

 

✔ 웹 서버의 컴포넌트 중 하나로 자바 서블릿과 상호작용한다.

✔웹 컨테이너는 서블릿 객체를 생성하고, 서블릿을 로드와 언로드하며, 요청과 응답 객체를 생성하고 관리하고, 다른 서블릿 관리 작업을 수행한다.

✔ 서블릿, 자바서버 페이지(JSP) 파일, 그리고 서버-사이드 코드가 포함된 다른 타입의 파일들에 대한 요청

   (웹 서버에서 요청)을 받고, 이를 웹 컨테이너로 보내 로직(알고리즘, DB 연결 등)을 수행하고

    그 결과를 다시 웹 서버로 보내 최종적으로 클라이언트에게 보내주는 것이다.

 

 

 

Servlet/JSP

 

여러 요청이 동일한 프로그램을 호출할 때 요청을 어플리케이션서버내의 컨테이너가 각 요청에 따라 스레드를 생성해 하나의 프로그램을 동작시키는 방식으로 대량의 트래픽 발생해도 CGI 방식에 비해 부하가 덜 발생함

 

✔ Servlet

- 자바를 기반으로 하는 웹 개발 표준 언어

- 실행 코드 방식

 

JSP

- 자바 기반 스크립트 언어

- 웹 어플리케이션에서 결과 화면을 생성할 때 주로 사용

 

서버 : 톰캣( http://tomcat.apache.org/)

 

톰캣의 디렉토리 

-  bin : 톰캣을 실행하고 종료시키는 스크립트 파일 위치

- conf : 설정 파일이 위치

- lib : 톰캣을 실행하는데 필요한 라이브러리(jar) 파일이 위치

- logs : 톰캣 로그 파일이 위치

- temp : 톰캣이 실행되는 동안 임시 파일이 위치

- webapps : 웹 어플리케이션이 위치

- work : 톰캣이 실행되는 동안 사용되는 작업 파일이 위치

 

728x90
반응형

'JAVA > Servlet&JSP' 카테고리의 다른 글

윈도우 환경에서 was 배포하기  (0) 2022.11.23
[ jQuery ] div 보이기,숨기기/show, hide  (0) 2022.06.20

댓글