데스트탑 애플리케이션 vs 웹 애플리케이션?

데스크톱 어플리케이션

사용자가 직접 아이콘을 더블 클릭하거나 명령 창(터미널)을 통해 실행시키는 프로그램

웹 애플리케이션

사용자가 웹 서버를 통해 간접적으로 실행시키는 프로그램


CGI(Common Gateway Interface)란 무엇인지?

웹 브라우저에서 웹 서버로 정보를 요청하면 웹 서버는 프로그램에 작업을 요청하여

CGI규칙을 통해 결과를 받아서 클라이언트로 응답한다.

이 때 웹 서버와 프로그램 사이의 데이터를 주고받는 규칙을 CGI(Common Gateway Interface)라고 한다.


CGI 프로그램에서 컴파일 방식 vs 인터프리터 방식

CGI프로그램은 C, C++, Java와 같은 컴파일 방식의 언어로 작성 할 수도 있고

Perl, PHP, Python과 같이 스크립트 언어로도 작성 할 수 있다.

컴파일 방식은 

기계어로 번역된 코드를 바로 실행하기 때문에 실행 속도가 빠르지만,

변경 사항이 발생할 때마다 다시 컴파일하고 재배포해야하는 문제가 있다.


스크립트 방식은

실행할 때마다 소스 코드의 문법을 검증하고 해석해야 하기 때문에 속도가 느리지만,

변경 사항이 발생하면 단지 소스 코드를 수정하고 저장만 하면 되기 때문에 편리하다.



서블릿(Servlet)이란 무엇인가?

자바로 만든 CGI프로그램을 서블릿(서버 + 애플릿의 합성어)이라고 함

자바 서블릿이 다른 CGI프로그램과 다른 것은 웹 서버와 직접 데이터를 주고 받지 않으며,전문 프로그램에 의해 관리된다는 것


서블릿 컨테이너?

서블릿의 생성과 실행, 소멸 등 생명주기를 관리하는 프로그램, "서블릿 컨테이너"

서블릿 컨테이너가 서블릿을 대신하여 CGI 규칙에 따라 웹서버와 데이터를 주고 받음.

개발자들은 CGI 규칙을 알 필요가 없지만 서블릿 규칙에 대해서 알아야 함.


WAS(Web Application Server)란 무엇인지?

서블릿과 서블릿 컨테이너와 같은 웹 기술 기반으로 동작하는 애플리케이션 서버를 

"WAS(Web Application Server)"라고 함



'ServletJDBC' 카테고리의 다른 글

MVC  (0) 2015.07.20
Statement vs PreparedStatement  (0) 2015.07.12
서블릿(Servlet) 기초2  (0) 2015.07.12
서블릿기초1  (0) 2015.07.12
서블릿을 시작하기 전..  (0) 2015.07.12
Posted by slender ankles
,