2009-04-15 4 views

Antwort

3

Wenn Sie nicht vorhaben, einen Web-Server zu verwenden (für statischen Inhalt) vor Tomcat dann April sollte die Dinge verbessern.

Ich habe es nur indirekt über JBoss Web verwendet, aber ich bevorzuge immer eine Apache httpd Front Tomcat, also denke ich APR ist dann irrelevant.

4

Erfüllt this Ihre Frage zu beantworten. Leistungen?

Tomcat können das Apache Portable Runtime verwenden ausgezeichnete Skalierbarkeit, Leistung und eine bessere Integration mit nativen Server-Technologien zur Verfügung zu stellen. Die Apache Portable Runtime ist eine sehr portable Bibliothek, die das Herzstück von Apache HTTP Server 2.x bildet. APR hat viele Verwendungsmöglichkeiten, einschließlich Zugriff auf erweiterte E/A-Funktionen (wie sendfile, epoll und OpenSSL), Betriebssystemfunktionen (Zufallsgenerierung, Systemstatus usw.) und native Prozessverarbeitung (Shared Memory, NT-Pipes und Unix-Sockets).

Diese Funktionen machen Tomcat zu einem Allzweck-Webserver, ermöglichen eine wesentlich bessere Integration mit anderen nativen Webtechnologien und machen Java als vollwertige Webserver-Plattform viel praktikabler als eine Backend-Technologie.

(Hervorhebung von mir)

+6

Das ist was docs/advertisements sagt, aber ich konnte keine Berichte aus erster Hand finden, die behauptete Vorteile bestätigen. – Marko

3

Ich benutze APR mit mod_perl2 und ich habe eine Leistungsverbesserung festgestellt. Diese Leistungsverbesserung ergibt sich aus der Verwendung von APR, um direkt auf mehr als nur den Systemstatus zuzugreifen, und das nicht, weil APR eine hoch optimierte Bibliothek ist, die Cookies, Header, Datentypen usw. direkt vom Webserver verarbeitet. Es bietet auch direkten Zugriff auf alle Aspekte der Verbindung, die normalerweise nicht verfügbar sind.

Ich habe es noch nicht mit Java verwendet, aber ich versuche herauszufinden, wie ich TomCat 6 dazu bringen kann, es aus JSP-Code zu verwenden. Ich erwarte eine gesteigerte Effizienz, wenn ich APR direkt aus meinem Java-Code verwende, genau wie ich es mit Perl getan habe.