본문 바로가기

DEVELOP/BackEnd

웹 어플리케이션의 개념

1. 웹 어플리케이션이란

웹 브라우저 상에서 HTTP 프로토콜 및 HTML문서를 근간으로 수행되는 어플리케이션을 의미한다.

또한 인터넷이나 인트라넷을 통해 웹 브라우저에서 이용할 수 있는 소프트웨어를 말한다.

 

RIA나 Ajax같은 기술들을 통해 데스크탑 상에서 독립적으로 실행되는 독립 어플리케이션과 비슷한 수준의 속도와 유저 인터페이스를 갖추게 되었다.

 

...더보기

RIA(Rich Internet Application)

 웹 애플리케이션의 장점은 유지하면서 기존 웹 브라우저 기반 인터페이스의 단점인 늦은 응답 속도, 데스크톱 애플리케이션에 비해 떨어지는 조작성 등을 개선하기 위한 기술의 통칭이다. 즉, 별도의 설치가 필요 없는 웹 브라우저 기반의 애플리케이션 배포 장점과 서버 측 웹 서비스와의 연동, 마크업 언어 기반의 선언적 애플리케이션 구성 등은 유지하면 서 데스크톱 애플리케이션과 대등한 사용자 경험을 주는 것을 목표로 하는 기술이다.

 

2. 웹 어플리케이션의 구조

Client Tier :

- 사용자가 실제로 접하는 프로그램

- 프로그램이 설치된 컴퓨터, PDA, Mobile Phone                

Server Tier :

- Client Tier와 Data Tier를 연결해주는 소프트웨어 또는 하드웨어

Data Tier:

- 하부 단의 저장매체

- 파일 서버나 데이터베이스 서버 등이 설치된 컴퓨터, 혹은 각종 하드웨어 장비

 

웹 어플리케이션의 흐름

1. 웹 브라우저가 웹 서버에게 특정 페이지 요청

2. 해당 웹 서버는 웹 브라우저의 요청을 받아서 요청된 페이지의 로직 및 DB와의 연동을 위해 웹 어플리케이션 서버에 이들의 처리를 요청

3. 웹 어플리케이션 서버는 DB와의 연동이 필요하면 DB와의 데이터 처리를 수행

4. 로직 및 DB작업의 처리 결과를 웹 서버에 리턴

5. 웹 서버는 결과를 다시 웹 브라우저에게 응답

 

* 웹 서버와 웹 어플리케이션 서버(WAS)의 차이점

웹 서버 :

- 웹 브라우저(클라이언트)의 요청을 받아들이는 곳

- HTTP 프로토콜을 기반으로 클라이언트가 요청한 작업의 결과를 웹 브라우저에게 응답해주는 역할 담당

- HTTP 서버라고도 하며 주로 정적인 HTML, 이미지, CSS, Javascript를 웹 브라우저에게 제공할 때 사용

- 로직 수행이나 DB와의 연동을 위해 WAS에 처리 요청하는 작업 수행

- Apache, IIS

 

웹 어플리케이션 서버

- 웹 브라우저가 요청한 작업에 필요한 프로그래밍 로직의 처리 및 DB와의 연동을 처리하는 부분

- 처리 결과를 웹 서버로 전달

- 대부분의 WAS는 크게 웹 서버 기능과 컨테이너 기능으로 구성된다.

- Apache Tomcat, WebLogic(BEA), WebSphere(IBM), Jeus 등

 

 

클라이언트 스크립트와 서버 스크립트

  클라이언트 스크립트 서버 스크립트
수행 장소 웹 브라우저 웹 서버, WAS
제어 모듈 항상 브라우저에 포함 웹 서버에 포함되어 있거나 관리자가 직접 설치하거나 관리함
목적 사용자의 요청에 즉각적인 반응을 보이거나 웹 문서의 모습을 동적으로 변경 동적인 웹 문서 생성
기술 HTML, Javascript, RIA, Ajax ASP, PHP, JSP, Servlet, Node.js

 

'DEVELOP > BackEnd' 카테고리의 다른 글

URI와 URL의 차이점  (0) 2019.10.14
서블릿(Servlet) 프로그래밍 4  (0) 2019.09.29
서블릿(Servlet) 프로그래밍 3  (0) 2019.09.29
서블릿(Servlet) 프로그래밍 2  (0) 2019.09.26
서블릿(Servlet) 프로그래밍  (0) 2019.09.26