Apache Tomcat

aus Wikipedia, der freien Enzyklopädie

(Weitergeleitet von Jakarta Tomcat)
Wechseln zu: Navigation, Suche
Apache Tomcat

Standard-Startseite des Apache Tomcat
Basisdaten
Entwickler: Apache Software Foundation
Aktuelle Version: 6.0.20
(08. August 2008)
Betriebssystem: Windows, Linux, Unix, Mac OS X etc.
Programmiersprache: Java
Kategorie: Web Server, Java
Lizenz: Apache-Lizenz
Deutschsprachig: n/a
tomcat.apache.org

Apache Tomcat stellt eine Umgebung zur Ausführung von Java-Code auf Webservern bereit. Es handelt sich um einen in Java geschriebenen Servlet-Container, der mithilfe des JSP-Compilers Jasper auch JavaServer Pages in Servlets übersetzen und ausführen kann. Dazu kommt ein kompletter HTTP-Server.

Die Bezeichnung „Servlet-Container“ entspricht der von den Tomcat-Entwicklern gewählten Terminologie (sie leitet sich wohl aus der in Tomcat bevorzugten Konfiguration über XML-Dateien ab, die aus streng hierarchisch geschachtelten Strukturen bestehen). Vorläufer von Apache Tomcat wurden meist als „Servlet-“ und/oder „JSP-Engine“ klassifiziert. Mit dem Erscheinen von Tomcat waren komfortablerweise beide Funktionalitäten in einem Produkt vereinigt.

Der HTTP-Server des Tomcat wird vor allem zur Entwicklung eingesetzt, während in Produktion zumeist ein Apache Web-Server vor den Tomcat geschaltet wird. Dazu wird in den Webserver ein Connector-Plugin (mod_jk) eingebunden, das Requests für dynamische Inhalte an Tomcat weiterleitet. Das Plugin implementiert hierzu das Apache JServ Protocol (AJP). Es existieren auch Connector-Plugins für Microsoft- (IIS) und Netscape-Webserver.

Inhaltsverzeichnis

[Bearbeiten] Entwicklungsstand

Vor Gründung des Tomcat-Projekts unterhielt die Apache Software Foundation bereits einen Servlet-Container namens JServ. JServ unterstützte in seiner letzten Version die Servlet-Spezifikation 2.0. 1999 kündigte Sun Microsystems auf der Entwicklerkonferenz JavaOne an, die damalige Referenz-Implementierung der Servlet-Spezifikation 2.1 der Apache Software Foundation zur Verfügung zu stellen. Aus der Zusammenführung der existierenden JServ-Codebasis und SUNs Referenz-Implementierung entstand 1999 das Tomcat-Projekt.

Vor diesem Hintergrund erklärt sich, dass die erste Tomcat-Version direkt die Versionsnummer 3.0 erhielt. Tomcat 6.0.20 ist die aktuelle stabile Version. Sie implementiert die Spezifikationen Servlet 2.5 und JSP 2.1.

Tomcat besteht aus dem eigentlichen Servlet-Container Catalina und dem Connector Coyote. Der Connector unterstützt mittels diverser Protocol-Handler die Abarbeitung bspw. von HTTP-Anfragen oder die Verbindung zwischen Tomcat und Webserver mittels des Apache-JServ-Protokolls. Mit der gegenwärtig existierenden AJP-Implementation (Version 1.3) ist es möglich, den Servlet-Container auf einem gesonderten Host-Rechner zu betreiben, um den Webserver zu entlasten; insbesondere erlaubt es die Loadbalancer-Funktionalität, bei entsprechendem Leistungsbedarf dem Webserver einen Cluster aus mehreren Servlet-Containern zur Seite zu stellen.

[Bearbeiten] Verzeichnisstruktur

Die Verzeichnishierarchie einer Tomcatinstallation umfasst:

  • binstartup, shutdown und andere Skripte und ausführbare Dateien
  • common – Allgemeine Klassen, die von Catalina und anderen Webapplikationen benutzt werden können
  • confXML-Dateien und dazu gehörige DTDs der Tomcat-Konfiguration
  • logs – Catalina- und Anwendungslogs
  • server – Klassen, die nur von Catalina verwendet werden
  • shared – Klassen, die von allen Webapplikationen verwendet werden
  • webapps – Verzeichnis der Webapplikationen
  • work – temporäre Aufbewahrung von Dateien und Verzeichnissen

[Bearbeiten] Produkteigenschaften

[Bearbeiten] Tomcat 3.x

  • folgt den Spezifikationen Servlet 2.2 und der JSP 1.1
  • Neuladen von Servlets ohne Neustart

[Bearbeiten] Tomcat 4.x

  • folgt den Spezifikationen Servlet 2.3 und der JSP 1.2
  • der Servlet Container wurde neu entwickelt und nennt sich jetzt Catalina
  • der JSP-Compiler wurde neu entwickelt und nennt sich jetzt Jasper
  • JMX- (Java Management Extensions), JSP- und Struts-basierte Administration

[Bearbeiten] Tomcat 5.0.x

  • folgt den Spezifikationen Servlet 2.4 und der JSP 2.0
  • bessere Integration in die Plattformen Windows und Unix

[Bearbeiten] Tomcat 5.5.x

  • folgt den Spezifikationen Servlet 2.4 und der JSP 2.0
  • benötigt normalerweise J2SE 5.0, kann aber mit zusätzlichen Bibliotheken auch unter J2SE 1.4 laufen
  • höhere Performance und Stabilität
  • viele Teile wurden überarbeitet

[Bearbeiten] Tomcat 6.0.x

  • folgt den Spezifikationen Servlet 2.5 und der JSP 2.1

[Bearbeiten] Geschichte

James Duncan Davidson, damals bei Sun Microsystems als Entwickler beschäftigt, begann, Tomcat als eine Implementierung der Servletspezifikationen zu entwickeln. Er half dabei, aus Tomcat ein Open-Source-Projekt zu machen und es an die Apache Software Foundation zu übergeben.

[Bearbeiten] Weblinks

Persönliche Werkzeuge
Buch erstellen