In diesem Artikel erhalten Sie Informationen zu allem, was Sie über Apache Tomcat wissen müssen. Weiter lesen.

Was ist Apache Tomcat? Im Wesentlichen bezieht sich Apache Tomcat auf ein Open-Source-Java-Servlet und einen Java-Server-Page-Container, mit dem Entwickler eine Reihe von Java-Unternehmensanwendungen implementieren können. Darüber hinaus betreibt Apache Tomcat auch eine HTTP-Webserverumgebung, in der Java-Code ausgeführt werden kann.

Was sollten Sie sonst noch über Apache Tomcat wissen? Drei Jahre nach der ursprünglichen Einführung von Java im Jahr 1995 konnte der Sun Microsystems-Architekt James Duncan Davidson eine Open-Source-Servlet-Referenzimplementierung für die erste Java-Servlet-API entwickeln. Bei Java-Servlets handelt es sich um kleine Java-Programme, die definieren, wie Antworten und Anfragen von Servern verarbeitet werden. Ein Entwickler würde sein Servlet oder seine JSP schreiben und Apache Tomcat die gesamte Routing- und Backend-Arbeit durchführen lassen.

Zweiundzwanzig Jahre nach der ursprünglichen Veröffentlichung von Java ist Apache Tomcat ein führendes Top-Level-Projekt der Apache Software Foundation und wurde über 10 Millionen Mal heruntergeladen. Es hat eine große, vielfältige Durchdringung im gesamten Rechenzentrum mit einer Vielzahl von Anwendungsfällen, die Sie etwas später kennenlernen werden.

Eine Vielzahl von Entwicklern in seiner Community pflegen Tomcat, und seine derzeit stabilste Version ist die Serie 9.0, die erste Apache Tomcat-Version, die die Spezifikationen für Servlet 4.0 unterstützt. Der Apache Tomcat verfügt außerdem über die Coyote-Engine, einen Webserver, mit dem Entwickler eine Reihe von Java-Unternehmensanwendungen und -Funktionen verbinden können.

Die Geschichte von Apache Tomcat

Der Apache Tomcat begann als Servlet-Referenzimplementierung durch den Sun Microsystems-Softwarearchitekten James Duncan Davison. Dieser Architekt half später dabei, das Projekt offen zu gestalten, und spielte eine Schlüsselrolle bei der Spende von Sun Microsystems an die Apache Software Foundation. Das Software-Build-Automatisierungstool Apache Ant entstand als Nebeneffekt der Entwicklung von Apache Tomcat als Open-Source-Projekt.

James Duncan Davidson hatte zunächst gehofft, dass das Projekt Open-Source sein würde, und da viele Open-Source-Projekte O'Reilly-Bücher mit einem Tier auf dem Cover assoziierten, strebte er danach, das Projekt nach einem Tier zu benennen.

Er erfand „Tomcat“, weil er sagte, das Tier sei etwas, das für sich selbst sorgen könne. Obwohl der Kater bereits für einen anderen O'Reilly-Titel verwendet wurde, wollte er ein Tiercover sehen, was schließlich wahr wurde, als O'Reilly 2003 ihr Katerbuch mit einem Schneeleoparden auf dem Cover veröffentlichte.

Apache Tomcat-Komponenten

Der Apache Tomcat 4.x wurde mit Catalina, einem Servlet-Container, gestartet. Coyote, eine HTTP-Verbindung; und Jasper, eine JSP-Engine. Hier sind die Details zu den Komponenten von Tomcat.

1. Katharina

Catalina ist als Servlet-Container von Tomcat bekannt. Dies implementiert die Spezifikationen von Sun Microsystems für Servlet und JavaServer Pages oder JSP. In Tomcat stellt ein Realm-Element eine „Datenbank“ dar, die aus Benutzernamen, Passwörtern und Rollen besteht, ähnlich wie bei Unix-Gruppen, die diesen Benutzern zugewiesen sind.

Verschiedene Implementierungen von Realm ermöglichen es Catalina, sich in Umgebungen zu integrieren, in denen solche Authentifizierungsinformationen bereits erstellt und verwaltet werden, und diese Informationen dann zu verwenden, um Container-Managed Security durchzuführen, wie in der Servlet-Spezifikation beschrieben.

2. Coyote

Die nächste Komponente des Apache Tomcat ist Coyote. Gemeint ist eine Connector-Komponente für den Apache Tomcat, der als Webserver das HTTP 1.1- und 2-Protokoll unterstützt. Dadurch kann Catalina, nominell ein Java-Servlet oder JSP-Container, auch als einfacher Webserver fungieren, der lokale Dateien, zum Beispiel HTTP-Dokumente, bereitstellt.

Coyote wartet auf eingehende Verbindungen zum Server an einem bestimmten TCP-Port und leitet diese Anfrage an die Tomcat Engine weiter, um die Anfrage zu verarbeiten, bevor eine Antwort an den anfragenden Client zurückgesendet wird. Es gibt einen weiteren Coyote-Connector, nämlich Coyote JK, der auf ähnliche Weise lauscht, die Anfragen jedoch stattdessen an einen anderen Webserver wie Apache weiterleitet und dabei das JK-Protokoll verwendet. Dies bietet normalerweise eine bessere Leistung.

3. Jaspis

Jasper gehört zur JSP-Engine des Apache Tomcat. Jasper analysiert JSP-Dateien, um sie als Servlets in Java-Code zu kompilieren, die dann von Catalina verarbeitet werden. Zur Laufzeit erkennt Jasper Änderungen an JSP-Dateien und kompiliert sie neu.

Ab Version 5 nutzt Apache Tomcat Jasper 2, eine Implementierung der JSP 2.0 von Sun Microsystems. Von Jasper zu Jasper 2 wurden wichtige Funktionen hinzugefügt, darunter das Pooling der JSP-Tag-Bibliothek, die JSP-Kompilierung im Hintergrund, die Neukompilierung von JSP bei enthaltenen Seitenänderungen und der JDT-Java-Compiler.

Im Folgenden sind die neuen Komponenten aufgeführt, die mit der Veröffentlichung von Apache Tomcat 7 hinzugefügt wurden.

4.Cluster

Diese Apache Tomcat-Komponente wurde hinzugefügt, um größere Anwendungen zu verwalten. Es wird für den Lastausgleich verwendet, der durch viele Strategien erreicht werden kann. Für die Clustering-Unterstützung ist derzeit die JDK-Version 1.5 oder höher erforderlich.

5. Hochverfügbarkeit

Diese Hochverfügbarkeitsfunktion wurde hinzugefügt, um die Planung von System-Upgrades, beispielsweise für neue Releases und Änderungsanfragen, zu erleichtern, ohne die Live-Umgebung zu beeinträchtigen.

Dies wird erreicht, indem Live-Verkehrsanfragen an einen temporären Server an einem bestimmten Port gesendet werden, während der Hauptserver am Hauptport aktualisiert wird. Dies ist sehr nützlich, wenn Benutzeranfragen für Webanwendungen mit hohem Datenverkehr bearbeitet werden.

6. Internetanwendung

Darüber hinaus wurden benutzer- und systembasierte Webanwendungsverbesserungen hinzugefügt, um die Bereitstellung in verschiedenen Umgebungen zu unterstützen. Es funktioniert auch zur Verwaltung von Sitzungen und Anwendungen im gesamten Netzwerk.

Der Apache Tomcat erstellt weitere Komponenten. Eine Reihe dieser Komponenten können mit Apache Tomcat verwendet werden. Diese Komponenten können von Benutzern bei Bedarf erstellt oder von einem der Spiegel heruntergeladen werden.

Verschiedene Anwendungsfälle

Es ist interessant festzustellen, dass die Anwendungsfälle für Apache Tomcat recht breit gefächert sind, da es zu den am weitesten verbreiteten Java-Servern gehört. Zum einen läuft die Java-basierte Warenkorbanwendung KonaKart auf Apache Tomcat und nutzt es als Java-API und SOAP-Webservice-Schnittstelle.

Da Apache Tomcat Open Source ist, haben viele Entwickler dies angepasst und umgestaltet. Zu den Distributionen gehört der Enterprise Ready Server oder ERS von Springsource.

Ein weiterer Anwendungsfall von Apache Tomcat sind Cloud-Umgebungen wie die Axon-Rechenzentren, die teilweise von Tomcat betrieben werden.

Das Team hinter Apache Tomcat weist darauf hin, dass das Apache Tomcat-Projekt eine Zusammenarbeit der besten Entwickler weltweit sein soll, da die Software zahlreiche große, geschäftskritische Webanwendungen in einer Vielzahl von Organisationen und Branchen unterstützt.

Darüber hinaus implementieren viele Administratoren beim Einsatz von Apache Tomcat in einer groß angelegten Produktionsumgebung irgendeine Form zusätzlicher Überwachungs-, Entwicklungs- oder Konfigurationsverwaltungsstrategien.

Dokumentation

Die zum Veröffentlichungsdatum verfügbare Dokumentation ist in der Docs-Web-App enthalten, die mit Tomcat geliefert wird. Sie können auf die Web-App zugreifen, indem Sie Tomcat starten und besuchen http://localhost:8080/docs/ in Ihrem Browser. Die aktuellste Dokumentation für jede Version finden Sie unter:

  • Tomcat 10.1
  • Tomcat 10.0
  • Tomcat 9
  • Tomcat 8
  • Tomcat 7

Installation

Bitte beachten Sie RUNNING.txt .

Lizenzierung

Weitere Informationen finden Sie auch in den LIZENZ für weitere Informationen an.

Details zum Support und zur Mailingliste

Kostenloser Community-Support ist über die E-Mail-Liste der Tomcat-Benutzer und einen speziellen IRC-Kanal (#tomcat auf Freenode) zugänglich.

Wenn Sie nach frei verfügbarer Unterstützung für die Ausführung von Apache Tomcat suchen, können Sie die Ressourcenseite des offiziellen Servers besuchen Website .

Wenn Sie Informationen zu neuen Code-Releases, Bugfixes, Sicherheitsfixes oder allgemeine Neuigkeiten und Informationen zu Apache Tomcat wünschen, können Sie sich in die E-Mail-Liste tomcat-announce eintragen.

Wenn Sie einen konkreten Fehlerbericht für Apache Tomcat haben, finden Sie hier möglicherweise die Anweisungen zum Melden eines Fehlers Seite.