서블릿의 특징 및 동작방식 정리

Yoojin Jeong·2022년 3월 1일
0

CGI(Common Gateway Interface) 프로그램과 서블릿

애플리케이션,데스크톱 애플리케이션

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

웹 애플리케이션

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

  • 서버는 클라이언트가 요청한 프로그램을 찾아서 실행,작업을 수행한 후 웹 서버에게 돌려줌
  • 웹 서버는 결과를 토대로 HTTP 형식에 맞추어 웹 브라우저에 전송
  • 웹 서버와 프로그램 사이의 데이터를 주고 받는 규칙을 CGI라고 한다
  • 웹 서버와 데이터를 주고 받도록 작성된 프로그램을 'CGI 프로그램'이라고 한다

CGI 프로그램

  • C나 C++,Java와 같은 컴파일 언어로 작성할 수 있음
  • Perl, PHP, Python, VBScript 등 스크립트 언어로도 작성할 수 있음

컴파일 방식

  • 기계어로 번역된 코드를 바로 실행하기 때문에 실행 속도가 빠름
  • 컴파일하고 재배포해야하는 문제가 있음

스크립트 방식

  • 실행할 때마다 소스 코드의 문법을 검증하고 해석해야하므로 실행속도가 느림
  • 변경 사항이 발생하면 단지 소스코드를 수정하고 저장만 하면 되기 때문에 편리함

서블릿

  • 자바 CGI 프로그램은 C/C++처럼 컴파일 방식임
  • 자바로 만든 CGI 프로그램 = 서블릿(Servlet)
  • 웹 서버와 직접 데이터를 주고받지 않으며, 전문 프로그램에 의해 관리된다.

서블릿 컨테이너

  • 서블릿의 생성과 실행,소멸 등 생명주기를 관리하는 프로그램
  • 서블릿을 대신하여 CGI 규칙에 따라 웹 서버와 데이터를 주고 받음
  • 서블릿 개발자는 더 이상 CGI 규칙에 대해 알 필요가 없다

  • 자바 웹 애플리케이션 개발자는 JavaEE 기술 사양에 포함된 Servlet 규칙에 따라 CGI 프로그램을 만들고 배포한다.

0개의 댓글