[Sevlet]정리노트-웹프로그래밍 발전과정

Troy·2023년 5월 16일

Servlet

목록 보기
1/3

정적 (Static)웹프로그래밍이란?

  • HTML페이지,CSS이미지,자바스크립트 파일을 저장해놓고 브라우저에 요청하여 그대로 전달하는 방식
  • 변경되지 않는 한 고정된 웹 페이지를 보게됨.
  • 디자인을 구성하거나, 클라이언트의 이벤트를 처리함.
  • 실시간 정보를 표시하는데는 적합하지 않음.
    ex)네이버 날씨

구성요소 -> 고정된 화면이나 정보 표시에 사용

  • 웹서버 : 각 클라이언트에게 서비스를 제공하는 컴퓨터
  • 클라이언트 : 서비스를 제공받는 컴퓨터(User)
  • HTTP프로토콜 : Hyper Text Trsfer Protocol의 약자로 www서비스를 제공하는 통신 규약을 의미
  • HTML : Hyper Text Markup Language의 약자로, www 서비스를 제공하기 위한 표준 언어 (Markup이란? <>같이 태그형태로 되어있는 형태)
  • 자바스크립트 : 여러가지 동적인 기능을 제공하는 스크립트 언어
  • CSS : HTML페이지의 디자인 관련된 기능

문제점

실시간으로 정보 업데이트가 불편함. 정보 수정시 관리자가 직접 HTML소스를 수정하여 사용자에게 정보를 전달해야함.

동적 웹 프로그래밍이란?

  • 관리자의 역할을 웹 애플리케이션 서버(Web Application Server, WAS)가 수행
  • 요청이 있을때마다 데이터베이스에 접근해서 실시간 정보를 얻어와 클라이언트에게 전송 (실시간정보를 미리 DB에 저장해놓음)

WAS : 환율 조회 기능을 메모리에 업로드해서 데이터뷰에 연동 후 조회한 결과를 반환

JSP프로그램의 특징

  • 브라우저 요청시 스레드(thread)방식으로 실행하므로 CGI보다 효율적으로 기능을 수행
    (thread -> 프로그램이 동시에 여러작업을 처리할 수 있는 실행 모델. 동기화 처리에 주의해야 하고, 프로그래머가 직접 추가적인 동기화 기능을 구현해야한다.)

JSP 동작 방식의 특징

  • 프로세스 방식이 아니는 스레드 방식으로 실행
  • 클라이언트 요구를 처리하는 기능은 최초 한번만 메모리에 로드됨
  • 동일한 기능을 요구하면 기존에 사용한 기능을 재사용함
    -> 훨씬 빠르게 수행할 수 있으며 부하가 적게걸린다

---> 다수의 사용자가 동시에 요청하는 웹 프로그램에 적합

profile
코린이 N년차입니다

0개의 댓글