본문 바로가기

World Wide Web/Dynamic Web Page

정적 웹페이지와 동적 웹페이지, CGI 그리고 웹 어플리케이션에 관해

http://info.cern.ch/hypertext/WWW/TheProject.html

 

The World Wide Web project

The World Wide Web project World Wide Web The WorldWideWeb (W3) is a wide-area hypermedia information retrieval initiative aiming to give universal access to a large universe of documents. Everything there is online about W3 is linked directly or indirectl

info.cern.ch

우리가 보는 웹페이지는 굉장히 다이내믹해졌지만, 초창기 웹사이트는 굉장히 정적이었다. 위 링크를 열면 세계 최조의 웹페이지를 볼 수 있는데, 무척 정적임을 알 수 있다. 

 

WWW이라는 것이 무료로 런칭된 이후, 다양한 웹사이트가 개설되었지만, 사용자들은 이내 흥미를 잃었다. 왜냐하면 웹사이트를 접속해도 항상 똑같은 정보만 볼 수 밖에 없었기 때문이다. 위 링크의 세계 최초 웹사이트에서도 알 수 있듯이, 이 당시의 웹사이트는 사이트 관리자가 올려놓은 정보를 열람하는 것이 전부였다.

 

이러한 한계를 극복하고자 동적 웹페이지라는 개념이 대두되기 시작했다.

 

서버사이드 어플리케이션 프로그래밍 그리고 데이터 베이스의 대두

애초에 WWW라는 것은 CERN이라는 연구소에서 자신의 연구성과를 다른 사람들에게 보여주기 위해서 만들어진 발명품이다. 그러다 보니 관리자가 입력한 정보만 보여주는 것이 본래의 기능이었는데, 이러한 한계를 넘어 동적인 웹페이지가 나오기 시작한다. 

 

동적인 웹페이지에서는 사용자가 직접 정보를 입력할 수도 있고, 그에 따라 시시각각 변하는 정보를 습득할 수 있게 된다. 관리자가 입력한 정보만 보는 것이 아니라 다른 정보도 때때로 볼 수 있게 됨에 따라 WWW의 활용도가 늘어났다고 할 수 있다.

 

이러한 동적인 웹페이지를 구현하기 위한 기술로서 CGI, JSP/Servelet, PHP, Web Applicatioin이 생기기 시작했다.

 

CGI vs Web Application

동적 페이지를 구현하는 방식은 두 가지가 존재한다. CGI 방식 그리고 웹 어플리케이션 방식이다. CGI(Common Gateway Interface) 방식은 주로 펄 또는 C언어로 구현한다. 이 방식은 사용자가 서버에 정보를 요청할 때 마다 펄로 작성된 프로그램을 실행해서 데이터를 처리하는 방식이다. 이 방식의 문제점은 정보를 요청할 때 마다 프로그램을 실행하기 때문에 서버에 과부하가 생길 수 있다는 점이다.

 

이를 보완하기 위해서 웹 어플리케이션 방식이 등장했다. 이 방식의 구현을 위해 주로 java, php가 사용된다. 이 방식은 웹 서버에 php 엔진, java 엔진을 탑재하고, 서버에 요청이 올 때 php, java 프로그램을 한 번만 실행한다. 한 번 실행을 해두면, 프로그램을 매번 실행할 필요가 없게 된다.