1. Apache Tomcat
1) Apache
아파치 소프트웨어 재단의 웹 서버 오픈소스, 클라이언트의 요청이 왔을 때만 응답하는 정적인 웹 페이지에 이용된다.
HTTP 요청을 처리하는 웹 서버
* port 80을 이용
* HTML, CSS, 이미지 등 정적인 데이터만 처리
2) Tomcat
WAS(Web Application Server)로써 동적인 웹을 만들기 위해 사용된다.
컨테이너, 웹 컨테이너, Survlet 컨테이너라고도 한다.
웹 서버에서 정적으로 처리해야할 데이터를 제외한 JSP, ASP, PHP 등은 웹 컨테이너(Tomcat)에게 전달된다.
* 주로 port 8080을 이용
* JSP(Java Server Page)
- HTML 코드에 JAVA 코드를 넣어 동적웹페이지를 생성하는 웹어플리케이션 도구
- JSP가 실행되면 자바 서블릿(Servlet) 으로 변환되며 웹 어플리케이션 서버에서 동작되면서 필요한 기능을 수행하고
그렇게 생성된 데이터를 웹페이지와 함께 클라이언트로 응답한다.
* 자바 서블릿(Java Servlet)
서블릿이란 웹페이지를 동적으로 생성하기 위해 서버측 프로그램
즉, 아파치는 정적인 웹 페이지를 처리하고 톰캣은 DB연결, 데이터 조작, 다른 응용프로그램과의 상호작용 등의 동적인 데이터 또는 동작을 처리한다.
3) Apache Tomcat
정적, 동적 데이터 처리를 위해 아파치와 톰캣을 같이 사용한다.
(참고)
2. Web server, Web Container, WAS
Web server | Web Container | WAS |
HTTP 요청에 따라 정적인 컨텐츠(이미지, HTML, CSS)를 제공할 수 있는 프로그램 클라이언트의 요청을 서비스하는 기능을 담당한다. 혹은 동적인 컨텐츠 요청을 WAS에 보낸다. |
JSP와 Survlet을 실행시킬 수 있는 SW Web server에서 JSP를 요청하면 Tomcat에서는 JSP->Survlet으로 변환하여 컴파일을 수행하고 서블릿 수행 결과로 동적 페이지를 반환한다. |
Web server + Web Container 1. 웹 프로그램 실행 환경 & DB접속기능 제공 2. 여러 개의 트랜잭션 관리 3. 업무를 처리하는 비즈니스 로직 수행 |
ex) Apache server | ex) Tomcat |
3. Xplatform
'프로그래밍 > 웹' 카테고리의 다른 글
[Spring] CRUD블로그 : 개발환경 (0) | 2021.01.25 |
---|