동적인 웹을 만들기 위한 서블릿 컨테이너
*자세한 설명 생략
▷ Tomcat 이란?
- Tomcat(WAS)은 Web Server(Apache)와 통신하여 JSP와 Servlet이 작동하는 환경을 제공
*Tomcat은 내부 WebServer를 포함하여 독립적으로 사용 가능
- Tomcat은 여러 Connector(HTTP/1.1", "AJP/1.3", SSL ...)와 Connector interface를 제공
*HTTP/1.1 과 HTTP/2 Connector는 Tomcat이 독립적으로 동작하거나 다른 web server의 요청을 받아 WAS의 역할을 수행하도록 지원
*AJP Connector는 Apache HTTP Web server의 요청을 처리하기 위한 특수한 Protocol을 처리
*Tomcat 버전에 따라 각 Connector는 지원하는 Protocol(BIO, NIO, NOI2, APR, ...)을 선택하여 사용
▷ Tomcat 주요 구성 요소
- Coyote (HTTP Component) : Tomcat에서 TCP를 통한 프로토콜 지원
- Catalina (Servlet Container) : Java Servlet을 호스팅하는 환경(Tomcat의 Core Component)
- Jasper (JSP Engine) : JSP 페이지의 요청을 처리하는 Servlet
▷ Tomcat 내부 구조
① Server(Tomcat)가 요청 받음
② Engine(Catalina)이 요청에 맞는 Context를 찾음
③ Context는 deployment descriptor file(web.xml)을 기반으로 전달받은 요청을 Servlet에게 처리되도록 전달
*즉, 클라이언트 HTTP request → Server(tomcat) → Engine(Catalina) → Context → Servlet → 클라이언트 response 순으로 처리
*Server 하나에 여러 Service 사용 가능
*Engine 하나에 여러 Host 사용 가능
*Host 하나에 여러 Context 사용 가능
*Service는 Catalina Servlet Container 전체이고, Service 하나에 1개의 Engine과 여러개의 Connector로 구성
*Context는 하나의 Web Application이고, 주로 *.war 파일의 형태로 배포
▷ 참고
[tomcat] 동작원리
출처 : kchanguk.tistory.com/4 1. Tomcat의 설정($TOMCAT_HOME/conf/server.xml) * server.xml의 역할 TOMCAT의 메인 설정 파일이며 초기 설정을 명세하는 책임이 있습니다. 1) Server 최상위 element로, shutdown 요청 처리를
exhibitlove.tistory.com
Tomcat - (2) 구조
Tomcat의 구조에 대해 자세히 알아봅니다.
velog.io
▷ 관련 글
서블릿(Servlet) 이란?
서블릿의 기본 개념을 간단히 소개 *자세한 설명 생략 ▷ 서블릿(Servlet) 이란? - 클라이언트 요청을 처리하고, 그 결과를 반환하는 자바 웹 프로그래밍 기술 - Java로 구현된 CGI *CGI(Common Gateway Interf
coding-today.tistory.com
WebSocket vs Socket vs Socket I.O
간단한 개념 소개를 통해 어떻게 다른지 파악 *자세한 설명 생략 ▷ 소켓(Socket) 이란? *Socket 통신 : Server도 Client에게 요청을 보낼 수 있는 양방향 통신(연결유지) - 네트워크상에서 동작하는 프로
coding-today.tistory.com
'▶ Back-End > 개념 요약' 카테고리의 다른 글
Swagger 란? (0) | 2023.10.18 |
---|---|
Cassandra 기본 개념 (0) | 2023.08.10 |
Lombok이란? (0) | 2023.07.25 |
Docker 란? (0) | 2023.07.24 |
TDD, BDD, DDD란? (0) | 2023.07.23 |
댓글