본문 바로가기

Servlet, JSP

Apach Tomcat (아파치 톰캣)이란??

아파치 톰캣 로고

 

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)는
    1. 웹 서버의 구성요소로서 URL을 특정 servlet에 매핑하며 URL 요청자가 올바른 액세스 권한을 갖도록 합니다.

      → url을 특정 서블릿에 매핑!

    2. servlet , Jakarta Server Pages (JSP) 파일 및 서버 측 코드를 포함하는 기타 유형의 파일에 대한 요청을 처리합니다.

      → servlet, jsp 파일에 대한 요청을 처리합니다

    3. 웹 컨테이너는 서블릿 인스턴스를 생성하고, 서블릿을 로드 및 언로드 하고, 요청 및 응답 객체를 생성 및 관리하고, 기타 서블릿 관리 작업을 수행합니다.

      → 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과 구성요소들의 역할

 

참고 : tomcat.apache.org/download-90.cgi

en.wikipedia.org/wiki/Apache_Tomcat#Catalina

 

Apache Tomcat - Wikipedia

From Wikipedia, the free encyclopedia Jump to navigation Jump to search Java-based HTTP web server environment Apache Tomcat (called "Tomcat" for short) is an open-source implementation of the Java Servlet, JavaServer Pages, Java Expression Language and We

en.wikipedia.org

en.wikipedia.org/wiki/Web_container