zaksimcoding avatar

CGI / Applet / Servlet

eatcoding

Published: 05 May 2018 › Updated: 05 May 2018CGI / Applet / Servlet

CGI / Applet / Servlet

 이번 글에서는 CGI와 Applet, Servlet이 무엇인지 보겠습니다.
CGI

  • 서버 측에서 수행되는 외부 프로그램간의 통신 규약
  • 웹 서버는 프로그램을 실행시키고 사용자의 데이터를 외부 프로그램에 전달한다.
  • 외부 프로그램은 사용자의 데이터를 처리하고 응답을 웹서버에 전달한다. 
  • 웹 서버는 외부 프로그램으로부터 받은 응답을 다시 클라이언트에 전달한다.
  • Java로 작성한 CGI 프로그램을 Servlet이라고 한다.

Applet

  • Client용 프로그램
  • Web Client가 Applet 프로그램으로 자신의 컴퓨터에서 실행시켜 사용하는 형태
  • Web Browser에 내장된 JVM환경 이용

Servlet

  • 자바 언어를 개발한 썬마이크로사에서 웹개발을 하기 위해 만든 표준
  • Web Client의 요청을 Server 파트에서 실행시키는 프로그램
  • Java를 사용하여 web page를 동적으로 생성하는 서버측 프로그램
  • Web Container에 내장된 JVM환경 이용
  • JVM에서 클라이언트의 요청에 따라 Multi-Thread방식으로 동작

Servlet과 CGI의 차이점 

                 

  • CGI는 클라이언트 요청이 있을 때마다 process를 생성하여 CGI프로그램을 수행하는데 서버 측에 작업 부하를 가져온다.
  • Servlet은 Client의 요청이 있을 때 마다 process가 아닌 thread를 생성하는데 작업 부하가 적게 걸리고 속도면에서도 상당히 빠르다.
  • Servlet은 메모리 사용이 적으며 표준 API를 제공한다.
  • Servlet은 객체가 1개만 생성되고 Service 3개가 thread형태로 수행된다.
  • Servlet은 HTTP 기반서 request-response model 경우에서 클라이언트와의 사이에서 작용한다.

Leave CGI / Applet / Servlet to:

Written by

기초부터 배우는 코딩 블로그

Read more #cgi posts


Best Posts From zaksimcoding

We have not curated any of eatcoding's posts yet. But you can encourage our curation team to review posts by visiting them regularly and by referring other readers. Because we give priority to frequently read content.

More Posts From zaksimcoding