is Data.

CGI(Common Gateway Interface) 방식과 어플리케이션 서버 방식

1. CGI [ Common Gateway Interface] 

 

CGI는 웹서버와 프로그램 사이에 정보를 주고받는 규칙을 의미한다.

흔히 CGI프로그래밍이라고 하면 펄(Perl)이나 C/C++ 언어를 사용하여 웹서버를 통해 실행할 수 있는 프로그램을 작성하는 것을 말한다.

 

2. 어플리케이션 서버 방식과 CGI 방식의 차이

 

CGI방식과 어플리케이션서버 방식의 가장 큰 차이점은 요청에 대한 프로그램을 처리하는 대상의 차이이다.

먼저, CGI방식은 웹서버가 직접 요청에 대한 프로그램을 호출하고 처리하여 이에대한 응답결과를 브라우저에 전송한다.

하지만 어플리케이션서버 방식은 별도의 어플리케이션서버에서 프로그램을 호출하여 처리한 결과를 다시 웹서버에 전달하고

웹서버는 이 결과를 브라우저에게 응답결과로 전송하게 된다.

 

3. 어플리케이션 서버 방식을 사용하는 이유

 

오늘날 웹 어플리케이션은 대부분 어플리케이션서버 방식을 사용한다. JSP와 ASP.net 이 어플리케이션 서버 방식을 사용하는 언어이다.

매우 간단하고 접속자가 적어 요청처리가 별로 없는 경우엔 CGI방식을 사용하여도 큰 문제가 없지만 접속자수가 많아지고 많은양의

처리가 필요해질 때 얘기가 달라진다.

 

CGI 방식은 10개의 동일한 요청이 요구되었을 때 웹서버에서 동일한 10개의 요청을 처리하기위한 프로그램을 각각 호출하여 메모리에

호출되고 각각의 결과를 응답결과로 제시한다. 반면, 어플리케이션서버 방식은 동일한 요청의 경우 이미 어플리케이션 서버의 메모리에

호출된 하나의 프로그램으로 통해 얻은 결과를 10개의 요청에 동일하게 사용되어 응답결과를 생성하게 된다.

이 두방식의 차이는 성능면에서 큰 차이를 나타낸다. 접속자수가 많아지고 요청처리가 많아질수록 어플리케이션서버 방식이 사용하는 메모리의 양이 적기 때문에 훨씬 나은 성능을 발휘하게 된다.