728x90

[ 웹서버 ]  Apach

    • 정적인 컨텐츠(단순 HTML 문서, CSS, javascript, 이미지, 파일 등 즉시 응답가능한 컨텐츠 )를 제공하는 서버
    • 단순한 정적 컨텐츠는 웹 서버에게 맡기며 기능을 분리시켜 서버 부하를 방지한다.

[ Was ]   Tomcat

  • WAS는 웹 서버와 웹 컨테이너가 합쳐진 형태
  • 웹 컨테이너 : 웹 서버가 보낸 JSP, PHP 등의 파일을 수행한 결과를 다시 웹 서버로 보내주는 역할
  • 웹 서버 단독으로는 처리할 수 없는 데이터베이스의 조회나 다양한 로직 처리가 필요한 동적 컨텐츠를 제공

웹 어플리케이션은 요청 처리 방식

  • 클라이언트(사용자)  →  Web Server  →  DB
  • 클라이언트(사용자)  →  WAS → DB
  • 클라이언트(사용자)  →  Web Server  →  WAS  →  DB

DB에는 서버가 연산을 위해 필요한 각종 정보를 저장해두고
WAS에서 연산을 수행하며 필요한 정보를 DB에서 가져오고 편집합니다. 

WAS의 컨테이너(여러개 가능) 는 웹서버에서 보내준 요청을 가지고 스레드를 생성한 후,
필요한 jsp나 servlet 파일을 구동해서 로직을 수행하게 한 뒤
결과로 생성된 응답 객체를 웹서버에 보내주는 역할을 합니다.

[ JAVA SE / JAVA EE ]

  • JAVA SE : JAVA Standard Edition
  • JAVA EE : JAVA Enterprise Edition
간단히 JAVA EE는 JAVA SE의 확장 버전 으로 서버 개발을 위한 추가 기능을 제공하는 플랫폼입니다.
간단한 응용프로그램과 서버 구축은 JAVA SE만으로도 구성이 가능하지만,
Tomcat 등의 WAS를 이용하는 서버 개발은 JAVA EE에서 추가로 제공하는 기능을 사용합니다.
특히 JSP와 Servlet을 만들고 실행하는 규칙과, EJB(Enterprise JavaBeans)의 분산 컴포넌트, 웹 서비스 규칙 등을 추가로 가지고 있으며, 서블릿과 JSP를 구현하는 기능을 서블릿 컨테이너(Web container)라고 합니다.

JSP

Servlet(서블릿)

- 확장자가 .jsp인 파일
- Java Server Page
- html 문서 안에 자바 언어를 삽입해 사용가능
- 확장자가 .java인 파일
- 자바의 일반적인 클래스와 동일한 개념
- 웹을 다룰 수 있도록 해주는 "HttpServlet" 클래스를
  상속받은 클래스


JSP(.jsp) => Servlet (.java) =>  컴파일 => .class 파일=> 사용자(html)
클라이언트(브라우저)에서 실행되는 동적 처리는 자바스크립트를 통해 처리해줘야 합니다.
JSP에서 자바스크립트도 사용할 수 있습니다.

 

 

728x90

+ Recent posts