다음 이전 차례

1. Tomcat Overview

Tomcat 3.1 버젼과 달리, 톰캣 3.2 에는 많은 변화가 이루어진 듯 하다. 톰캣 3.1까지는 servlet 및 JSP spec 에 대한 기능의 구현 차원이라면 3.2 버젼부터는 퍼포먼스 튜닝 ,보안관련 보완(SSL등..), 톰캣 자체에서의 쓰레드 풀링 지원 및 mod_jserv 같은 web-server-plugin의 재작성(mod_jk) 등 웹 어플리케이션 서버로의 도약 과정으로 보여진다. 앞으로 나올 4.0 버젼부터는 많은 기대를 걸어도 좋을듯 하다. 더욱 자세한 사항은 Tomcat 관련 문서를 참조하기 바란다.

1.1 Release Notes For Tomcat

Tomcat 3.1

Tomcat 3.2

Tomcat 3.2.1

Tomcat 4.0

1.2 톰캣의 실행 모드

A. Stand_alone


 a. 톰캣 혼자서 웹 서버 및 Servlet 컨테이너 기능 모두 처리 
    즉, 독자적인 웹 어플리케이션 서버이다. 
 b. 톰캣이 Stand-alone 일 경우 Static File등에 대한 처리는 CPU 낭비임. 
    static file 예 : HTML, Image files
 c. Apache 처럼 확장성이(perl,php) 없고 정적화일등의 처리가 견고하지 못함.
 d. 그러므로 Apache 같은 웹서버와 병행하여 처리하는 것이 효율적임. 

B. In-Process

 a. Apache2.0 과 같은 Multi-Threaded-Server 가 필요함. 
 b. out-process 에 비해 비교적 빠른 편임. 
 c. apache등의 웹서버 프로세스내에서 JVM 등이 실행됨.
    이는 web-server-plugin에 의해 구현됨.
 d. JNI 사용 

C. Out-Process

 a. TCP/IP소켓을 사용하는 IPC 사용 
 b. 웹서버의 프로세스밖에서 JVM이 실행 
 c. 프로토콜로는 Ajpv12 와 Ajpv13 를 사용 

1.3 Web Server Plugin

* Web-Server-Plugin은 톰캣이 웹서버와 병행하여 사용할 수 있도록 만들어진 모듈

* 클라이어트측의 Servlet 혹은 JSP대한 요청은 웹서버가 Web-Server-plugin 에게 전송

* 또한, Web-Server-Plugin 은 전달받은 메시지를 톰캣에게 전송.

* 즉, Web-Server-Plugin은 웹서버(Apache)와 톰캣사이의 의사소통 당담자임.

* 톰캣3.1 버젼의 web-server-plugin은 mod_jserv.so 만 지원한다.

* 톰캣3.2 버젼의 Web-Server-Plugin은 mod_jserv.so 와 mod_jk.so 등 두가지를 지원한다.

* 통신을 돕기 위해 web-server-plugin가 필요한 것은 포트와 프로토콜(Ajp..)임.

* 아파치 및 톰캣사이에서 위의 포트와 프로토콜로 인해 통신이 가능하며 기타 호스트 정보도 필요.

* 다음은 mod_jserv.so 와 mod_jk.so 의 비교이다.

a. mod_jserv.so

 -구조가 복잡하다. 
 -SSL을 지원하는 HTTPS 지원 안됨 
 -Ajpv12 만 지원 
 -서블릿 지원 버젼 낮음 ..
 -Tomcat 3.1, 3.2에서 모두 지원  
 -기타..

b. mod_jk.so

 -구조가 복잡하지 않다.
 -mod_jserv.so 를 약간만 변경한 것이 아니다.
 -mod_jserv 를 완전히 재작성한 것이다. 
 -아파치, 넷스케이프등을 지원 
 -아파치 1.3.x 및 아파치 2.x.x 지원
 -Tomcat 3.2에서만 지원  
 -SSL 지원 
 -Ajpv 12 및 Ajpv13 모두 지원 
 -기타 

다음 이전 차례