Tomcat (Catalina)의 전체 아키텍처

Catalina의 전반적인 다이어그램



Tomcat의 서블릿 컨테이너, Catalina는 Server, Service, Engine, Host, Context, Warpper로 구성된다. 각각의 컴퍼넌트의 부모-자식 관계·전체도는 아래와 같다.
도면에서 중첩 된 구성 요소는 상위 구성 요소에 대한 다중도를 나타냅니다.
예를 들어, 서버는 하나 이상의 서비스를 가지며 서비스는 하나 이상의 커넥터와 하나의 엔진을 갖습니다.

※그림의 Value는 「Valve」의 실수입니다! 손이 비어있을 때 정정합니다!


각 컴포넌트에 대한 설명



서버 및 서비스 구성 요소



Server는 Tomcat 인스턴스 자체의 구성 요소입니다. 하나 이상의 Service, Global Naming Resources, Listener가 있습니다. Global Naming Resources는 JNDI를 사용하여 Tomcat 전체에서 참조 가능.

Service는 외부로부터의 요구 처리를 실시하는 컴퍼넌트. 하나의 엔진과 하나 이상의 커넥터가 있습니다. 커넥터가 요청을 수락하고 컨테이너 (Engine)가 요청을 실행합니다. 웹 서버로서 Tomcat을 실행할 때의 HTTP, Apache HTTPD의 백엔드로서의 AJP 프로토콜에 대응한 Connector를 가져, CoyoteAdapter가 각 프로토콜 마다의 커넥터와 Engine을 연결시킨다.



컨테이너 구성 요소 (Engine, Host, Context, Wrapper)



Engine, Host, Context, Wrapper는 컨테이너 컴포넌트라고 불리며 Servlrt 엔진의 핵심 컴포넌트를 구성한다. Engine은 Connector로부터 받은 요청을 처리/응답을 반환한다. 컨테이너를 구성하는 컴포넌트(Engine, Host, Context, Wrapper)의 기본적인 설명은 다음과 같다.
  • Engine : 부모 서비스가 보유한 Connector로부터 받은 요청을 처리/요청을 반환한다.
  • Host : Engine 내의 가상 호스트를 나타냅니다.
  • Context: 가상 호스트내에서 실행되는 웹 어플리케이션을 나타낸다. 웹 어플리케이션과 일대일에 대응한다.
  • Wrapper:Web 어플리케이션내의 Servlet 1개에 대응한다. Servlet의 인스턴스와 일대일에 대응한다.

  • (쓰기 도중)

    좋은 웹페이지 즐겨찾기