티스토리 뷰

JSP

WebAppliction 구조

지옥화 2012. 5. 27. 00:01

WebAppliction 구조 ( 3-tier Web application )

[front-end]

웹브라우저가 설치된 Clinet

 

[back-end]

저장매체를 의미.

파일서버나 데이터베이스 서버등이 설치된 하드웨어 장비에 해당.

 

[middle-ware]

back-end <-> front 를 연결해주는 소프트웨어 또는 하드웨어.

즉 웹서버가 설치되어 있는 컴퓨터.

 

middle-ware가 front-end에게 특정페이지 요청받으면

back-end에게서 정보를 가져오고,

그 정보를 가공하여 html 페이지로 전환하여 front-end에게 페이지를 서비스.

 

CGI(Common Gateway Interface)

 

이전에 웹은 미리 작성되어 있는 HTML을 Client에게 정적인 형태로만 서비스하였다.

하여, HTML을 동적으로 생성하여 서비스하기위해 CGI(Common Gateway Interface) 가 등장.

그러나 CGI는 MultiThread를 지원하지 않아서 사용자가 늘어날수록 사용자 만큼

프로세스를 생성하여 처리되므로 수행속도가 기하급수적으로 떨어진다.

 

이러한 CGI의 단점을 극복하고자 확장된 CGI가 등장하게 되었고,

자바에서는 Servlet이라는 API를 제공하게 되었다.

 

Servlet는 기존 CGI와는 다르게 MultiThread를 지원함으로서 보다 안정적으로 서비스를 할 수 있게되었지만,

완전한 하나의 자바 애플리케이션이기 때문에 출력해야 될 HTML코드를 Servlet 코드안에 작성하는

방식이기 때문에 개발과 유지보수에 있어서 단점이 있다.

이와 같은 단점을 보완하고 보다 쉽게 웹 애플리케이션을 구현하기 위해 JSP가 등장하였다.

 

JSP로 작성한 Middle-ware에서는

웹서버에 JSP 엔진을 구동하고, JSP문장이 존재하는 HTML을 확장자로 .jsp 로 지정하여

Client가 이를 요청할때 JSP 엔진은 이 파일을 컴파일한 Servlet Class를 HTML코드로 작성하여

Client에게 다시 응답해준다.

 

Middle-ware에서 서버측 Script를 이용하기 위해서는 Script Engine이 필요한데,

이를 웹서버에 모듈 형태로 장착하게 된다.

'JSP' 카테고리의 다른 글

JSTL 태그 정리  (3) 2012.08.29
서블릿 상속도  (2) 2012.06.03
서블릿 메서드 정리.  (0) 2012.06.03
Tomcat 7.0 에서 JNDI DataSource 설정  (0) 2012.05.27
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함