Apache Tomcat은 Java Servlet, JavaServer Pages, Java Expression Language 및 Java WebSocket 기술을 실행할 수 있는 오픈 소스입니다.
Tomcat은 Java 코드를 실행할 수 있는 "순수한 Java" HTTP 웹 서버 환경을 제공합니다.
즉 apache tomcat은 java Sevlet, JSP 구동 환경을 제공하는 것뿐만 아니라 HTTP 웹서버 역할을 합니다.
톰캣의 구성요소 및 역할
Tomcat 4.x부터 Catalina (servlet container), Coyote (HTTP 커넥터) 및 Jasper ( JSP 엔진 )와 함께 출시되었습니다 (21년 1월 기준, stable 버전은 9 버전)
Catalina
Catalina는 Tomcat의 servlet container입니다
- servlet container(= web container)는
-
웹 서버의 구성요소로서 URL을 특정 servlet에 매핑하며 URL 요청자가 올바른 액세스 권한을 갖도록 합니다.
→ url을 특정 서블릿에 매핑!
-
servlet , Jakarta Server Pages (JSP) 파일 및 서버 측 코드를 포함하는 기타 유형의 파일에 대한 요청을 처리합니다.
→ servlet, jsp 파일에 대한 요청을 처리합니다
-
웹 컨테이너는 서블릿 인스턴스를 생성하고, 서블릿을 로드 및 언로드 하고, 요청 및 응답 객체를 생성 및 관리하고, 기타 서블릿 관리 작업을 수행합니다.
→ servlet의 생명주기 관리해줍니다.
-
Coyote
Coyote는 HTTP 1.1 프로토콜을 웹 서버로 지원하는 Tomcat의 Connector Component입니다.
→ Catalina는 Coyote를 사용해 웹 서버로서 작동할 수 있습니다.
Jasper
Jasper는 Tomcat의 JSP 엔진입니다.
Jasper는 JSP 파일을 구문 분석하여 Java 코드를 서블릿으로 컴파일합니다.
톰캣 버전 5부터 Tomcat은 Jasper 2를 사용합니다.
Jasper에서 Jasper 2까지 중요한 기능이 추가되었습니다.
-
JSP 태그 라이브러리 풀링
-
백그라운드 JSP 컴파일 – 수정된 JSP Java 코드를 재 컴파일하는 동안 이전 버전을 서버 요청에 계속 사용할 수 있습니다. 새 JSP 서블릿이 다시 컴파일되면 이전 JSP 서블릿이 삭제됩니다.
→ 수정된 jsp 파일을 서버에 반영하기 위해서 서버를 재시작할 필요가 없습니다.
-
페이지 변경이 포함된 경우 JSP를 다시 컴파일합니다. 런타임에 페이지를 JSP에 삽입하고 포함할 수 있습니다.
→ 새로운 jsp 파일을 서버에 반영하기 위해서 서버 재시작할 필요가 없습니다
참고 : tomcat.apache.org/download-90.cgi
'Servlet, JSP' 카테고리의 다른 글
Hello Servlet! 만들어보기 (IDE 없이) (0) | 2021.01.03 |
---|---|
Apache Tomcat 설치하기 - Windows 10 (1) | 2021.01.02 |
자바 8 설치 - 윈도우 (0) | 2021.01.02 |
톰캣에 여러 Context 사이트 추가하기 (0) | 2021.01.01 |
Servlet, Jsp, Spring은 무엇일까?? 공부 순서는?? (0) | 2020.12.31 |