728x90
[ 웹서버 ] Apach
- 정적인 컨텐츠(단순 HTML 문서, CSS, javascript, 이미지, 파일 등 즉시 응답가능한 컨텐츠 )를 제공하는 서버
- 단순한 정적 컨텐츠는 웹 서버에게 맡기며 기능을 분리시켜 서버 부하를 방지한다.
[ Was ] Tomcat
- WAS는 웹 서버와 웹 컨테이너가 합쳐진 형태
- 웹 컨테이너 : 웹 서버가 보낸 JSP, PHP 등의 파일을 수행한 결과를 다시 웹 서버로 보내주는 역할
- 웹 서버 단독으로는 처리할 수 없는 데이터베이스의 조회나 다양한 로직 처리가 필요한 동적 컨텐츠를 제공
웹 어플리케이션은 요청 처리 방식
|
DB에는 서버가 연산을 위해 필요한 각종 정보를 저장해두고 WAS에서 연산을 수행하며 필요한 정보를 DB에서 가져오고 편집합니다. WAS의 컨테이너(여러개 가능) 는 웹서버에서 보내준 요청을 가지고 스레드를 생성한 후, 필요한 jsp나 servlet 파일을 구동해서 로직을 수행하게 한 뒤 결과로 생성된 응답 객체를 웹서버에 보내주는 역할을 합니다. |
[ JAVA SE / JAVA EE ]
간단한 응용프로그램과 서버 구축은 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