Apache Tomcat

Apache Tomcat

Logo

Standard-Startseite von Apache Tomcat
Basisdaten

EntwicklerApache Software Foundation
Erscheinungsjahr1999[1], 27. Januar 2006[2]
Aktuelle Version9.0.91[3]
(8. Juli 2024)
BetriebssystemGNU/Linux[4], Microsoft Windows[4], BSD-Betriebssystem[4], macOS[4], Unix-ähnliches System
Programmier­spracheJava[5][2]
KategorieWebserver, Java
LizenzApache-Lizenz, Version 2.0[4]
tomcat.apache.org

Apache Tomcat ist ein Open-Source-Anwendungsserver und Servlet-Container, der die Spezifikation für Jakarta Servlets (früher: Java Servlets) und Jakarta Server Pages (JSP, früher: JavaServer Pages) implementiert und es damit erlaubt, in Java geschriebene Web-Anwendungen auf Servlet- beziehungsweise JSP-Basis auszuführen.[6]

Aufbau und Funktionsweise

Tomcat besteht aus dem eigentlichen Servlet-Container Catalina, der JSP-Engine Jasper und dem Connector-Framework Coyote.[7] Mittels verschiedener Connectoren unterstützt Tomcat diverse Kommunikationsprotokolle und kann mit dem HTTP-Connector entweder als eigenständiger Webserver betrieben oder mittels des AJP-Connectors in andere Webserver wie Apache Web-Server oder Microsoft IIS integriert werden. Mit der gegenwärtig existierenden AJP-Implementierung (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 Lastverteilungsfunktionalität, bei entsprechendem Leistungsbedarf dem Webserver einen Cluster aus mehreren Servlet-Containern zur Seite zu stellen.

Verzeichnisstruktur

Die Verzeichnishierarchie einer Tomcat 6.x/7.x/8.x/9.x Installation umfasst:

bin
startup, shutdown und andere Skripte und ausführbare Dateien
conf
(XML-)Konfigurationsdateien
lib
Allgemeine Bibliotheken, die von Catalina und anderen Webapplikationen benutzt werden können
logs
Catalina- und Anwendungslogs
temp
temporäre Dateien
webapps
Verzeichnis der Webapplikationen
work
Verzeichnis zum Aufbewahren kompilierter JSP-/jspx-Dateien, persistierter Sessions etc.

Geschichte

Die Entwicklung von Tomcat startete ursprünglich als Projekt von James Duncan Davidson bei Sun Microsystems als Referenz-Implementierung für die Java-Servlet- und JavaServer-Pages-Spezifikationen. Sun übertrug 1999 die Codebasis von Tomcat auf die Apache Software Foundation, die das Projekt unter dem Dach ihres Top-Level-Projekts Jakarta als Open-Source-Projekt weiterführte. Im Jahr 2005 wurde Tomcat selbst zu einem eigenen Apache-Top-Level-Projekt und hat seitdem seine eigene Organisations- und Management-Struktur.[8]

Vor Übernahme des Tomcat-Projekts unterhielt die Apache Software Foundation bereits einen Servlet-Container namens JServ. Die Entwicklung von JServ wurde zugunsten von Tomcat im Jahr 2000 eingestellt. Lediglich der Connector, der Tomcat an andere Webserver über das AJP-Protokoll anbinden kann, wurde aus der Codebasis von JServ heraus in Tomcat übernommen. Im Jahr 2001 erfolgte mit der Tomcat-Version 4 ein tiefgreifendes Redesign der Tomcat-Struktur und weite Teile der Codebasis wurden neu erstellt.[9]

Tomcat findet auch in einer Reihe von JavaEE-Anwendungsservern Anwendung, so ist er beispielsweise Bestandteil von Apache Geronimo und Apache TomEE.

Wichtige Apache-Tomcat-Versionen

VersionVeröffentlicht amUnterstützung bisLetzte VersionLetzte AktualisierungServlet-VersionJSP-VersionJava-VersionBeschreibung / Anmerkung
Ältere Version; nicht mehr unterstützt: 3.x1999EOL3.3.29. März 20042.21.11.1Initiale Version. Merger des gespendeten Sun-Java-Web-Server-Codes und ASF. Neuladen von Servlets ohne Neustart. Refactoring hin zu mehr Modularität zwecks Performance- und Stabilitätsverbesserungen[10]
Ältere Version; nicht mehr unterstützt: 4.x18. Sep. 2001EOL4.1.4025. Juni 20092.31.21.3Neuentwicklung des Servlet-Containers ("Catalina"), Neuentwicklung des JSP-Compilers ("Jasper"), Einbau von JMX, JSP- und Struts-basierter Administration
Ältere Version; nicht mehr unterstützt: 5.09. Okt. 2002EOL5.0.3030. Aug. 20042.42.01.4bessere Integration in die Plattformen Windows und Unix
Ältere Version; nicht mehr unterstützt: 5.510. Nov. 2004[11]30. Sep. 2012[12]5.5.36[13]10. Okt. 20122.42.01.4Überarbeitung vieler Teile, Erhöhung der Leistung und Stabilität; basiert auf JSE 5.0 (mit zusätzlichen Bibliotheken auch unter JSE 1.4)
Ältere Version; nicht mehr unterstützt: 6.028. Feb. 2007[14]31. Dez. 2016[15]6.0.53[14]2. Apr. 20172.52.15
Ältere Version; nicht mehr unterstützt: 7.014. Jan. 2011[16]31. März 2021[17]7.0.109[16]26. Apr. 20213.02.26Erhöhung der Leistung und Stabilität, viele Änderungen im Bereich Servlet (Annotationen, asynchrone Bearbeitung von Requests, dynamische Konfiguration), basiert auf JSE 6
Ältere Version; nicht mehr unterstützt: 8.024. Juni 2014[18]30. Juni 2018[19]8.0.53[18]29. Juni 20183.12.37
Ältere Version; nicht mehr unterstützt: 8.524. März 2016[20]31. März 2024[21]8.5.100[20]19. März 20243.12.37HTTP/2 mit Unterstützung der Tomcat Native Library; OpenSSL für JSSE; Unterstützung von Server Name Indication
Ältere Version; noch unterstützt: 9.030. Sep. 2017[22]9.0.89[22]3. Mai 20244.02.38HTTP/2-Unterstützung auch ohne Tomcat Native Library sofern Java 9 eingesetzt wird[23]
Ältere Version; nicht mehr unterstützt: 10.028. Dez. 2020[24]31. Oktober 2022[25]10.0.273. Okt. 20225.03.08Unterstützung für Jakarta EE 9
Aktuelle Version: 10.126. Sep. 2022[26]10.1.24[26]9. Mai 20246.03.111Unterstützung für Jakarta EE 10
Legende:
Ältere Version; nicht mehr unterstützt
Ältere Version; noch unterstützt
Aktuelle Version
Aktuelle Vorabversion
Zukünftige Version
Commons: Apache Tomcat – Sammlung von Bildern, Videos und Audiodateien

Einzelnachweise

  1. Heritage. (englisch, abgerufen am 24. Juli 2018).
  2. a b projects.apache.org. (abgerufen am 8. April 2020).
  3. Tomcat 9.0.91 (remm). 8. Juli 2024 (abgerufen am 13. Juli 2024).
  4. a b c d e In: Free Software Directory.
  5. The tomcat Open Source Project on Open Hub: Languages Page. In: Open Hub. (abgerufen am 21. September 2018).
  6. Tomcat 7 Documentation. Apache Software Foundation, abgerufen am 20. Februar 2013.
  7. Lajos Moczar: Tomcat 5. Einsatz in Unternehmensanwendungen mit JSP und Servlets. 1. Auflage. Addison-Wesley, 2004, ISBN 978-3-8273-2202-9, S. 410 ff. (Google Books).
  8. Apache Tomcat Dokumentation: The Tomcat Story
  9. Vivek Chopra, Sing Li, Jeff Genender: Professional Apache Tomcat 6. 1. Auflage. Wiley, 2007, ISBN 978-0-471-75361-2, S. 3,62 (Google Books).
  10. Apache Tomcat 3.x. Apache Tomcat, 10. November 2004, abgerufen am 28. Juli 2018 (englisch).
  11. Tomcat 5.5.4 is Stable. 10. November 2004, abgerufen am 28. Juli 2018 (englisch).
  12. End of life for Apache Tomcat 5.5.x. Apache Tomcat, 10. August 2011, abgerufen am 24. Juli 2018 (englisch).
  13. Apache Tomcat 5.5 Changelog. Apache Tomcat, abgerufen am 28. Juli 2018 (englisch).
  14. a b Apache Tomcat 6 Changelog. Apache Tomcat, abgerufen am 28. Juli 2018 (englisch).
  15. End of life for Apache Tomcat 6.0.x. Apache Tomcat, 3. Juni 2015, abgerufen am 28. Juli 2018 (englisch).
  16. a b Apache Tomcat 7 Changelog. Apache Tomcat, abgerufen am 20. Mai 2020 (englisch).
  17. End of life for Apache Tomcat 7.0.x. Apache Tomcat, 2. März 2020, abgerufen am 28. Juli 2018 (englisch).
  18. a b Apache Tomcat 8 Changelog. Apache Tomcat, abgerufen am 28. Juli 2018 (englisch).
  19. End of life for Apache Tomcat 8.0.x. Apache Tomcat, 30. Juni 2017, abgerufen am 28. Juli 2018 (englisch).
  20. a b Apache Tomcat 8.5 Changelog. Apache Tomcat, abgerufen am 13. Mai 2024 (englisch).
  21. Apache Tomcat® - End of life for Apache Tomcat 8.5.x. Abgerufen am 3. August 2023.
  22. a b Apache Tomcat 9 Changelog. Apache Tomcat, abgerufen am 13. Mai 2024 (englisch).
  23. Apache Tomcat 9. Apache Tomcat, abgerufen am 28. Juli 2018 (englisch).
  24. Apache Tomcat 10 Changelog. In: tomcat.apache.org. Abgerufen am 24. August 2021 (englisch).
  25. Apache Tomcat® - End of life for Apache Tomcat 10.0.x. Abgerufen am 3. August 2023.
  26. a b Apache Tomcat 10.1 Changelog. Apache Tomcat, abgerufen am 13. Mai 2024 (englisch).

Auf dieser Seite verwendete Medien

Apache-tomcat-frontpage-epiphany-browser.jpg
(c) I, Adamantios, CC BY-SA 3.0
Screenshot of Apache Tomcat (jakarta project) default front page. Browser is Gnome Epiphany.
Apache Tomcat logo.svg
Autor/Urheber: ™/®The Apache Software Foundation, Lizenz: Apache License 2.0
Logo of Apache Tomcat
Русский: Логотип Apache Tomcat