웹 애플리케이션

  • 웹을 기반으로 실행되는 프로그램을 말한다.
  • 웹 프로그래밍을 한다는 것은 웹 애플리케이션을 구현한다는 것을 의미한다.

웹 애플리케이션 동작 원리

  • 클라이언트(사용자, 웹 브라우저)가 서버에 요청을 보내고 서버가 해당 요청에 대해 응답하는 것이 기본 동작이다.
  • 보통 클라이언트는 크롬, 익스플로러 등의 웹 브라우저를 지칭한다.
  • 사용자는 자신이 사용하는 웹 브라우저를 이용하여 인터넷 서핑 등을 할 때, 실제로는 웹 브라우저가 지속적으로 해당 웹 페이지의 서버에 요청을 보내고 응답을 받는 과정이 일어난다.
  • 즉, 사용자와 웹 브라우저는 클라이언트가 되어 서버에 서비스를 요청하고, 서버는 해당 요청에 대해 응답하여 서비스를 제공해주고 웹 브라우저 화면에 결과를 출력하는 것이 웹 애플리케이션 동작 원리이다.
  • 서버 측에서는 웹 서버가 최초의 요청과 최종적인 응답을 담당한다.
  • 먼저 웹 서버가 요청을 받으면 WAS서버(웹 애플리케이션 서버, Web Application Server)에서 다양한 로직이나 데이터베이스와의 연동을 통해서 완성된 결과물만 응답한다.
  • WAS 서버는 데이터베이스 연동이 필요할 경우 데이터베이스 서버와 연동하여 데이터를 가져와 처리한다.



웹 애플리케이션 구성 요소

구성 요소 설명

웹 브라우저

  • 사용자(클라이언트)가 요청한 웹 서버의 결과를 화면에 출력해 보여주는 애플리케이션이다.

웹 서버

  • 웹 브라우저의 요청을 받아 들여서 이에 알맞은 결과를 웹 브라우저에 응답해 주는 역할을 한다.
  • 정적인 페이지를 처리를 담당한다.
  • 요청에 필요한 페이지의 로직이나 데이터베이스와의 연동을 위해서 애플리케이션 서버에 이들의 처리를 요청한다
  • 대표적인 웹 서버의 종류로는 아파치(Apache)와 IIS(Internet Information Server)가 있다.

웹 애플리케이션 서버
(WAS, Web Application Server)

  • 요청한 페이지의 로직이나 데이터베이스와의 연동을 처리하는 부분이다.
  • 동적인 페이지 처리를 담당한다.
  • 대표적인 WAS로는 아파치 톰캣(Tomcat), BEA사의 웹로직(WebLogic), IBM의 웹스파이어(WebSphere), SUN사의 iPlanet, Oracle 9iAS, 국산으로는 제우스(jeus) 등이 있다.

데이터베이스

  • 데이터 정보를 저장하는 곳이다.
  • 웹 서버는 동적인 컨텐츠 생성, 서버 상에 데이터 저장을 하지 못한다.
  • 이러한 기능을 수행하기 위해 도우미 애플리케이션이 필요하다.


'프로그래밍' 카테고리의 다른 글

프로그래머 10계명  (0) 2015.06.09

+ Recent posts